ARROW-17416: [R] Implement lubridate::with_tz and lubridate::force_tz

Implement functions lubridate::with_tz and lubridate::force_tz to manipulate time zones.
lubridate::force_tz is similar to the assume_timezone compute function, but so far we have not been able to reproduce lubridate::force_tz because the behavior is different in the following two respects

Timestamp with time zone cannot be changed to timestamp with another time zone. (try to do this, it converts to R data frame.)
force_tz(roll = FALSE) converts a non-existent time to NA, but there is no option for assume_timezone to perform such an operation. For now, trying to perform this kind of operation will raise an error.

However, even if we are not able to reproduce this behavior at this stage, it is worth implementing because it may cover many use cases.
time <- arrow::Array$create(c("2010-03-14 02:05:05", "2009-08-07 00:00:01"))$cast(arrow::timestamp("s"))
time |> as.vector() |> lubridate::force_tz("America/New_York", roll = FALSE)
#> [1] NA                        "2009-08-07 00:00:01 EDT"
arrow::call_function("assume_timezone", time, options = list(timezone = "America/New_York", nonexistent = 0L)) |> as.vector()
#> Error: Invalid: Timestamp doesn't exist in timezone 'America/New_York': 2010-03-14 02:05:05 is in a gap between
#> 2010-03-14 02:00:00 EST and
#> 2010-03-14 03:00:00 EDT which are both equivalent to
#> 2010-03-14 07:00:00 UTC

Created on 2022-09-11 with reprex v2.0.2

Since lubridate has limitations, shouldn't we make it an error to do anything other than what lubridate does for now and support the clock package in the future?
The clock package seems to be aiming for the backend of lubridate, but I don't know when that will be.

There's still one failing test related to the "roll" behaviour. Basically, lubridate doesn't support the way that Arrow can handle this case (the clock package can support both).

Maybe roll_dst = c("boundary", "post") ?
library(dplyr, warn.conflicts = FALSE)

nonexistent <- lubridate::as_datetime(c(
  "2015-03-29 02:30:00",
  "2015-03-29 03:30:00"
), tz = "UTC")

tibble::tibble(timestamp = nonexistent) |>
  mutate(rolled = lubridate::force_tz(timestamp, "Europe/Brussels", roll_dst = c("boundary", "post"))) |>
  collect()
#> # A tibble: 2 × 2
#>   timestamp           rolled
#>   <dttm>              <dttm>
#> 1 2015-03-29 02:30:00 2015-03-29 03:00:00
#> 2 2015-03-29 03:30:00 2015-03-29 03:30:00

Created on 2023-01-06 with reprex v2.0.2

Ah, so "boundary" == "roll-forward"? I'll update that.

roll_dst is a vector of length 2, so c("boundary", "post") == "roll-forward", I think.


Provide a better Debugging Experience

When a config works, it's awesome. When it doesn't, the troubleshooting experience is far from perfect.
Partial Run for Debugging
Dagger can only run all or nothing: when one component of the config misbehaves, there's no way to make some tweaks and re-run only that part.
The current experience requires a lot of trial and error: comment out everything but the component you're debugging, get errors about unused imports, fix those, then get errors about undefined identifiers (the dependencies of the component we want to run), uncomment those dependencies, and continue so recursively.
This is particularly frustrating when writing a configuration.
Possible solution: allow running a single component and its dependencies (e.g. dagger up --target app)
Exporting Artifacts
It would be great to be able to download an artifact from a config in order to inspect it.
For instance, if we want to troubleshoot a build output, right now the main approach is to add an intermediary step that mounts the build and executes a ls or similar, Having something like dagger download would make that much smoother.
Interactive Debugging
When commands fail, we can only rely on the logs to debug. Typically to debug we add some extra debugging commands and run dagger up again, until we succeed.
It would be really awesome to execute commands in any pipeline:
$ dagger exec "<cuepath>" -- ls -l
$ dagger exec -it "<cuepath>" /bin/sh
# ls -l /src

This needs some more design: at which step of the pipeline does the command will be executed?
Maybe we could provide an interactive debugger that goes step to step inside a pipeline and allows executing commands at any point.

On the one hand, we still want better debugging (very badly). On the other hand, our implementation has changed a lot since you wrote this @aluzzardi . Do you want to 1) keep open as-is, 2) edit the issue text, 3) close?

I found myself wanting debugging at several levels.
Figuring out what is happening with a cue eval or dagger do hang with no logs/error output, for example.
Figuring out what is happening at a some point in an action during a dagger do: #2197

@aluzzardi should we reassign this to @dolanor since it falls under error message improvements? If not, can you provide an update?

Or can we close this since our Dagger run view in the UI should help with this? @aluzzardi

Closing this since a lot has changed since this issue was created


Implement Canonn-API support

Current URL is https://api.canonn.tech Need to generate C# client from OpenAPI description and tie at least USS from logs

Canonn will source USS data from EDSM - support from ELA no longer needed


Add more examples of GLM fit

Based on public datasets. Try to vary the setting (block, event, phase-encoding, multi-session, possibly multi-subject).

partly OK now. See also #12


Test code not generated?

This might be a skill issue, but I'm struggling to see any generated test code. For example:

run a postgres on port 6432: docker run --rm -p 6432:5432 -e POSTGRES_PASSWORD=postgres postgres:16-alpine
run this script

//
// remember to give the project a github star if you like it <3
//
//> using dep "com.olvind.typo::typo:0.22.2"
//> using dep "com.olvind.typo::typo-dsl-doobie:0.22.2"
//> using scala "3.4.2"

import typo.*

// adapt to your instance and credentials
implicit val c: java.sql.Connection = java
  .sql
  .DriverManager
  .getConnection("jdbc:postgresql://localhost:6432/postgres?user=postgres&password=postgres")

val _ =
  // setup table
  c.prepareStatement("drop table if exists todos; create table todos(id serial primary key)")
    .execute()

val options = Options(
  pkg = "org.foo.generated",
  dbLib = Some(DbLibName.Doobie),
  jsonLibs = Nil,
  generateMockRepos = Selector.All,
  enableDsl = true,
)

// current folder, where you run the script from
val location = java.nio.file.Path.of(sys.props("user.dir"))

// destination folder. All files in this dir will be overwritten!
val targetDir = location.resolve("generated/main")
val testTargetDir = location.resolve("generated/test")

// where Typo will look for sql files
val scriptsFolder = location.resolve("sql")

// you can use this to customize which relations you want to generate code for, see below
val selector = Selector.ExcludePostgresInternal

@main def run = generateFromDb(
  options,
  targetFolder = targetDir,
  testTargetFolder = Some(testTargetDir),
  selector = selector,
  scriptsPaths = List(scriptsFolder),
).overwriteFolder()

// add changed files to git, so you can keep them under control
//scala.sys.process.Process(List("git", "add", targetDir.toString)).!!

all the files that get generated are the main ones. There's nothing for tests, and/or mocks:
generated
└── main
    └── org
        └── foo
            └── generated
                ├── customtypes
                │   ├── Defaulted.scala
                │   └── TypoInstant.scala
                ├── information_schema
                │   ├── CardinalNumber.scala
                │   ├── CharacterData.scala
                │   ├── SqlIdentifier.scala
                │   ├── TimeStamp.scala
                │   └── YesOrNo.scala
                ├── package.scala
                └── public
                    └── todos
                        ├── TodosFields.scala
                        ├── TodosId.scala
                        ├── TodosRepo.scala
                        ├── TodosRepoImpl.scala
                        ├── TodosRow.scala
                        └── TodosRowUnsaved.scala

9 directories, 14 files

Is there something I forgot to configure?

sounds a bit counterintuitive that generateMockRepos isn't enough to generate mocks 😅  the mocks don't require anything from testinserts, do they?

Oh, it should - I missed that you did set it. I'll have a look

doh, I found it! generateFromDb has two overloads, and the "simple" version - the one you use - throws away the generated source code in test scope. I just added this and overlooked it.
Quick fix: Check the implementation and call the overload with ProjectGraph instead, and run .foreach(overwriteFolder()) instead in the script.
I'll patch it up soon


match_acceptance_extended computation problem

Describe the bug
Some match_acceptance_extended computation is impossible.

On notebook, it will kill the kernel
On login node, it will lead to Segmentation fault (core dumped)

To Reproduce
Insert the MWE of how to reproduce the error
st_simu = saltax.contexts.sxenonnt(runid=21952,
             saltax_mode='simu',
             output_folder='/project/lgrandi/yuanlq/salt',
             faxconf_version="sr0_v4",
             generator_name='flat',
             recoil=8,
             mode='all')
st_simu.make('022685', "match_acceptance_extended")

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Versions
Please add the output of:
straxen.print_versions()

All italic comments can be removed from this template.

Doesn't matter anymore. We are giving up on pema features.


Remove unused codecov orb

The codecov orb has been unused for a long time. And yet, renovate keeps bumping the version and rebasing the open PR (https://github.com/artsy/force/pull/9169), wasting CI time.
Next challenge: how to get renovate to stop rebasing all of these bump PRs constantly.

Gonna go ahead and merge this, but feedback welcome.


Fix main menu on small devices (Fixes #2005)

Use bootstraps navbar-toggle button to bring up a
vertical responsive main menu.
Some additional responsive CSS impmprovements.

One error. Rest is ok.

Travis fixed. Rebased. Ready for merge.


linux-yocto-onl/5.15: update to 5.15.41

Update to include the latest fixes from upstream. Update meta to HEAD,
lacking a v5.15.41 commit yet.
Most interesting change from 5.15.41:
ping: fix address binding wrt vrf

commit e1a7ac6f3ba6e157adcd0ca94d92a401f1943f56 upstream.

When ping_group_range is updated, 'ping' uses the DGRAM ICMP socket,
instead of an IP raw socket. In this case, 'ping' is unable to bind its
socket to a local address owned by a vrflite.

Before the patch:
$ sysctl -w net.ipv4.ping_group_range='0<PHONE_NUMBER>'
$ ip link add blue type vrf table 10
$ ip link add foo type dummy
$ ip link set foo master blue
$ ip link set foo up
$ ip addr add <IP_ADDRESS>/24 dev foo
$ ip addr add 2001::1/64 dev foo
$ ip vrf exec blue ping -c1 -I <IP_ADDRESS> <IP_ADDRESS>
ping: bind: Cannot assign requested address
$ ip vrf exec blue ping6 -c1 -I 2001::1 2001::2
ping6: bind icmp socket: Cannot assign requested address

Signed-off-by: Jonas Gorski<EMAIL_ADDRESS>

Currently run tested on as4610


Experience-8549: Fix incorrect setting type history

This changeset updates the setting revision query key to be cached on the Organization and setting type (Sender|Receiver).  Originally, it was being cached on the strings "org" and "settingType" verbatim, which means that all revision histories would get the same response that's in the query cache.  This just updates the query key to be more dynamic.
Test Steps:

Log in as an admin
Choose an Organization with multiple Sender/Receiver channels to edit
Click on the different "History" links (using the back button/without refreshing the page) and verify that only the correct revision histories are shown for the specific setting type (Organization|Sender|Receiver)

Changes

Checklist
Testing

[x] Tested locally?
- [ ] Ran ./prime test or ./gradlew testSmoke against local Docker ReportStream container?
[x] (For Changes to /frontend-react/...) Ran npm run lint:write?
[ ] Added tests? -- not sure if it's really needed since this is just updating a query key 🤷

Linked Issues

Fixes #8549

Tested locally, works as intended!
I do wonder if we should explicitly be passing which piece of history we're looking for and pass that to useSettingRevisionEndpointsQuery instead of inferring it from the query params?

That's already happening here, and they're getting passed as props from path fragments (rather than query parameters) here.  The underlying issue is that we were just telling the query cache to cache on the very, very general and literal query key of ["org", "settingType"] so it was returning the cached response rather than making a new call specific to the Organization/setting type.

That's already happening here, and they're getting passed as props from path fragments (rather than query parameters) here. The underlying issue is that we were just telling the query cache to cache on the very, very general and literal query key of ["org", "settingType"] so it was returning the cached response rather than making a new call specific to the Organization/setting type.

Ah, sorry yes, path fragments vs. query params! Looks like they are getting passed down (like you said) but not from here, but from here: https://github.com/CDCgov/prime-reportstream/blob/master/frontend-react/src/pages/admin/AdminRevHistory.tsx#L196-L201.
I know out of the scope here, but a little convoluted in how it's passed all the way down...and seems like org can be "" which I assume won't throw a potential error in rsUseQuery?

Those two links are pointing to the same location -- did you mean to post another link? :P
Regarding passing down the props, I agree with you for this specific case because there's only one instance of MainRevHistoryComponent in the entire app, but I think the idea here was that we could use it elsewhere irrespective of the page location.  Put another way, we could simplify it so that MainRevHistoryComponent calls useParams directly, but that'd make it impossible to use that component on a different page because it'd always be tied to paths that have to include the :org and :settingType fragments.


Cannot handle trailing slash in repo

godownloader -repo https://github.com/alecthomas/gometalinter/

That fails, but if I remove the trailing slash it works.

great find @autarch   thanks again for the QA-by-fire

Double bug!

command
works

godownloader -repo https://github.com/alecthomas/gometalinter/
does not work

gowdownloader -repo alecthomas/gometalinter/
does not work

gowdownloader -repo alecthomas/gometalinter
works

The code can be smarter.

I think I also noticed that github.com/alecthomas/gometalinter didn't work,
even though I expected it should
Cheers,
Dave Rolsky
http://blog.urth.org
https://github.com/autarch
On Mon, Mar 12, 2018 at 1:48 PM, Nick Galbreath<EMAIL_ADDRESS>wrote:

Double bug!
command works
godownloader -repo https://github.com/alecthomas/gometalinter/ does not
work
gowdownloader -repo alecthomas/gometalinter/ does not work
gowdownloader -repo alecthomas/gometalinter works
The code can be smarter.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/goreleaser/godownloader/issues/55#issuecomment-372421974,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AADGKawdAi-UyRLzHoBCUnnad7NZyW2rks5tdsL6gaJpZM4Sm9sa
.


debug

Please provide a description of this PR:

/test all

@howardjohn: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

gencheck_istio
05e5b2bd54032491f4286989ffff6ff723edc044
link
true
/test gencheck_istio

lint_istio
05e5b2bd54032491f4286989ffff6ff723edc044
link
true
/test lint_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@howardjohn: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

gencheck_istio
05e5b2bd54032491f4286989ffff6ff723edc044
link
true
/test gencheck_istio

lint_istio
05e5b2bd54032491f4286989ffff6ff723edc044
link
true
/test lint_istio

integ-pilot-multicluster_istio
05e5b2bd54032491f4286989ffff6ff723edc044
link
true
/test integ-pilot-multicluster_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


Release with binary

Hi, would you consider publishing compiled binary with your releases please?
For people who are not rust developers, it is added complexity to compile minmon. I just followed your instructions, but my cargo install command ended with error
error: linker `cc` not found
  |
  = note: No such file or directory (os error 2)

error: could not compile `proc-macro2` (build script) due to 1 previous error
warning: build failed, waiting for other jobs to finish...
error: could not compile `libc` (build script) due to 1 previous error
error: failed to compile `minmon v0.9.0 (/home/urza/minmon/minmon)`, intermediate artifacts can be found at `/home/urza/minmon/minmon/target`.
To reuse those artifacts with a future compilation, set the environment variable `CARGO_TARGET_DIR` to that path.

I can imagine that it is not just me who would appreciate if you published the binary with releases that we could just drop into the system..
Thanks

This error looks like there are build tools missing. If you're using Ubuntu or something similar please try this:
sudo apt update
sudo apt install build-essential

The docker image is a portable binary release, you might consider using that instead.
Releasing "plain" binaries is not as simple as it might seem.
Some of the dependencies are linked to shared objects outside of minmon itself, so the resulting binary is not 100% portable. It would be an option to offer pre-built Debin/Ubuntu and/or RPM packages though.
Which distribution are you using?

I am using Ubuntu Server. Mix of 22.04 and 24.04
Docker is nice, but I would also like to use minmon in some situations which are so low on resources that running Docker is not possible (VPS and such).
Doesn't rust have something like static build where it compiles all it needs into to resulting binary?

Doesn't rust have something like static build where it compiles all it needs into the resulting binary?

Yes and no. The rust "parts" of the binary are statically linked. But some of the dependencies dynamically link to shared objects.
This is the output of ldd for the MinMon binary on Arch Linux:
	linux-vdso.so.1 (0x00007ffe7efc4000)
	libssl.so.3 => /usr/lib/libssl.so.3 (0x000076b1bd927000)
	libcrypto.so.3 => /usr/lib/libcrypto.so.3 (0x000076b1bd400000)
	libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x000076b1bdcb1000)
	libm.so.6 => /usr/lib/libm.so.6 (0x000076b1bd315000)
	libc.so.6 => /usr/lib/libc.so.6 (0x000076b1bd131000)
	/lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x000076b1bdce3000)

OpenSSL (libcrypto and libssl) could be replaced with rustls which minmon already supports. The resulting binary would have improved portability but still not perfect (i.e. musl-based distributions like Alpine still won't work). Prepackaged deb and rpm packages would be more robust as they track dependencies and give proper error messages when they fail to install. I'm undecided on which way is the better one to be honest. Do you know other projects that release prebuilt (unpackaged) binaries? Would be good to see how others handle this problem.
Did you try to build with build-essentials installed on Ubuntu?

There's a related discussion in https://github.com/flo-at/minmon/pull/220 about RPM packages.


LLDP Fails when not enabled

Description of Issue/Question
get_lldp_neighors{_details} fails if lldp is not supported.
Did you follow the steps from https://github.com/napalm-automation/napalm#faq
[x] Yes
[ ] No
Setup
napalm-junos version
(Paste verbatim output from pip freeze | grep napalm-junos between quotes below)
napalm-junos==0.4.4

JunOS version
(Paste verbatim output from show version and haiku between quotes below)
ntc@vsrx1> show version and haiku
Hostname: vsrx1
Model: vSRX
Junos: 15.1X49-D15.4
JUNOS Software Release [15.1X49-D15.4]

        gdb and me
        joyfully watching bugs flee
        working happily

Steps to Reproduce the Issue
Will fill out later :)
Error Traceback
(Paste the complete traceback of the exception between quotes below)
TASK [get facts from device] ***************************************************
fatal: [ntt-vsrx]: FAILED! => {"changed": false, "failed": true, "msg": "[environment] cannot retrieve device data: RpcError(severity: error, bad_element: None, message: command is not valid on the vsrx)"}
...ignoring

Verified with napalm-junos==0.6.0
It seems that we get an RPC error if the l2cpd-service subsystem is not running.
Backtrace:
In [8]: print device.get_lldp_neighbors()
---------------------------------------------------------------------------
RpcError                                  Traceback (most recent call last)
<ipython-input-8-0c6b1bbd7632> in <module>()
----> 1 print device.get_lldp_neighbors()

/usr/lib/python2.7/site-packages/napalm_junos/junos.pyc in get_lldp_neighbors(self)
    429         """Return LLDP neighbors details."""
    430         lldp = junos_views.junos_lldp_table(self.device)
--> 431         lldp.get()
    432
    433         result = lldp.items()

/usr/lib/python2.7/site-packages/jnpr/junos/factory/optable.pyc in get(self, *vargs, **kvargs)
     62
     63         # execute the Junos RPC to retrieve the table
---> 64         self.xml = getattr(self.RPC, self.GET_RPC)(**rpc_args)
     65
     66         # returning self for call-chaining purposes, yo!

/usr/lib/python2.7/site-packages/jnpr/junos/rpcmeta.pyc in _exec_rpc(*vargs, **kvargs)
    154             # associated :junos: device and return
    155             # the results per :junos:execute()
--> 156             return self._junos.execute(rpc, **dec_args)
    157
    158         # metabind help() and the function name to the :rpc_cmd_name:

/usr/lib/python2.7/site-packages/jnpr/junos/decorators.pyc in wrapper(*args, **kwargs)
     56                     try:
     57                         dev.transform = dev._norm_transform
---> 58                         result = function(*args, **kwargs)
     59                         dev.transform = restore_transform
     60                         return result

/usr/lib/python2.7/site-packages/jnpr/junos/decorators.pyc in wrapper(*args, **kwargs)
     24         else:
     25             try:
---> 26                 return function(*args, **kwargs)
     27             except Exception:
     28                 raise

/usr/lib/python2.7/site-packages/jnpr/junos/device.pyc in execute(self, rpc_cmd, **kvargs)
    527                 'permission denied' \
    528                 else EzErrors.RpcError
--> 529             raise e(cmd=rpc_cmd_e, rsp=rsp, errs=err)
    530         # Something unexpected happened - raise it up
    531         except Exception as err:

RpcError: RpcError(severity: error, bad_element: None, message: the l2cpd-service subsystem is not running)

I'm not sure - what else would you expect to see when the process is not running? I find the error message intuitive enough. At most we could raise a different error, but I don't see much value added.

Or to return empty dict?

@mirceaulinic We can return the RPC error as is in the dict

If a dict would be preferable rather than an error, it should be at list an empty dict.
Otherwise, if we introduce error messages in a dictionary whose keys are supposed to be interfaces only, it will lead to confusions.
So we can either raise error, either empty dict - not both.


Do not require Brunch

Currently, the readme states that you can use other build tools than Brunch in your postcompile script — but this buildpack is only activated if you do actually have a brunch-config.js file present. This is not necessarily the case, if you switched to Gulp or Webpack or something.

@avdgaag thanks for this! Sorry took me a while to get to this. Just realized I wasn't watching this repo.
Anyway, fix has just been pushed. :+1:


chore: Updated requirements.txt

This PR introduces the following modifications:

removes unused pandas dependency since it's quite heavy for low-power devices
unpinned pyroclient from dependencies of the main Raspberry (@chloeskt could you review this carefully please? I'm not sure why it was pinned in the first place, so I might have missed something)

Any feedback is welcome!

HI!, Thanks for this PR. Maybe you can also update this requirement
The rooter library must be in the main.rpi.requirements.txt instead

@MateoLostanlen I only modified the files I felt like I understood where/when it's being used!
I'd need some guidance, because deps are not the same for central Pi vs camera controllers

ok for doing this in another PR, all good then !


Ethan: Blacklist 4kmovies.fun

Ethan requests the blacklist of the website 4kmovies\.fun. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

4kmovies\.fun has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Makyen in Charcoal HQ

Approved by Ollie in Charcoal HQ


Geometry Management for Google Maps

Fixes https://github.com/CartoDB/cartodb.js/issues/1519.
Implements geometry management (drawing + edition for Google Maps).
Here's the new class hierarchy for geometry views implemented here:
geometry-view-base.js
├── point-view-base.js
│   ├── leaflet-point-view.js -> markerAdapter
│   ├── gmaps-point-view.js -> markerAdapter
├── path-view-base.js
│   ├── leaflet-polyline-view.js -> pathAdapter
│   ├── leaflet-polygon-view.js -> pathAdapter
│   ├── gmaps-polyline-view.js -> pathAdapter
│   ├── gmaps-polygon-view.js -> pathAdapter
├── multi-geometry-view-base.js
│   ├── leaflet-multi-point-view.js -> geometryView
│   ├── leaflet-multi-polyline-view.js -> geometryView
│   ├── leaflet-multi-polygon-view.js -> geometryView
│   ├── gmaps-multi-point-view.js -> geometryView
│   ├── gmaps-multi-polyline-view.js -> geometryView
│   ├── gmaps-multi-polygon-view.js -> geometryView
├── marker-adapter-base.js
│   ├── leaflet-marker-adapter.js -> L.marker
│   ├── gmaps-marker-adapter.js -> google.maps.Marker
├── path-adapter-base.js
    ├── leaflet-path-adapter.js -> L.polyline | L.polygon
    ├── gmaps-path-adapter.js -> google.maps.Polyline | google.maps.Polygon

Acceptance:

Checkout google-maps-geometry-management.
Run grunt dev.
Make sure the following examples are working correctly (draw geometries, edit existing ones, etc.):

http://localhost:9001/examples/v4/leaflet-geometry-editor.html
http://localhost:9001/examples/v4/gmaps-geometry-editor.html

cc: @rochoa

Retest this please

Retest this please

I just tested it and both, gmaps and leaflet, have the same behavior.
The only thing that it is still weird for me is not having midpoints when creating a new polygon/polyline, but I guess that's the expected behavior.

Thanks for the CR and for testing this @rochoa!

The only thing that it is still weird for me is not having midpoints when creating a new polygon/polyline, but I guess that's the expected behavior.

Yes, this is something we decided early on.


stuff to work on

TODO

[x] Email content -> figure out html stuff :man_technologist:

[x] Random Code generator

[ ] Reset all fields after purchase :dollar:

Maybe add some kind of "email send" pop up in the bottom left?

Any further ideas? :bulb:  Otherwise we would basically be finished with the main part!. :+1:

I just quickly added the "email send" pop up :cactus:

[ ] add password to seperate file and gitignore
[ ] try to fix database?

[ ] Rick the roll!

[ ] Email send failed popup


Patch documentation is not generated

During configuration, CMake writes the file projects/README.md. Working on the 18.02.2 release, I noticed that the patch information is not written correctly. Externpro thinks we have no patches, and writes none for each project.
This may exist in the main branch, too.

This appears to be fixed already in 21.09.1.


DNS error when deploying 200-advanced-private-link-deployment

Has anyone received the following error when deploying 200?  Haven't had a chance to dive into this but figured I'd put it out there before doing so since it happens at every deployment (Azure commercial and gov).  Cluster deploys but compute instance deployment fails during retrieval of key vault secret.

nvm... got it working.  The TF code doesn't add the appropriate A records.

nvm... got it working. The TF code doesn't add the appropriate A records.

Hi,
I have the same problem, I would be happy to know how you resolved it.


No session for cookie, weird polkit error since gainRealTime was added

Hyprland Version
Hyprland, built from branch main at commit a9b8e2159c2813a6951d0b0186fbb7f2f8554d3e dirty (renderer: reset scissor after renderTexturePrimitive). Tag: v0.27.2-54-ga9b8e215  flags: (if any)
Bug or Regression?
Bug
Description
Another weird issue related to https://github.com/hyprwm/Hyprland/commit/9fc5f4c48b20875337b7a1eddd274f191edd504d
Since that was added and even with the follow up fix polkit just doesn't work at all. Removing the code from that commit it works perfectly fine as normal.
I've tried various different ways of doing the realtime priority change in the code and just can't get it to work without just removing it.
Also testing with and without it I see no meaningful difference in behaviour when system is under full load. Cursor still lags when CPU is 100% maxed etc.
 Maybe we should make it configurable (opt-in)?

I'll create a pr tomorrow putting it behind a config variable.

Are you using either ananicy-cpp or system76-scheduler?

ananicy-cpp yeah

Submitted a PR to do this if you could check you agree it is the correct solution and that it works @milyth and that you'd be happy with that fix too @vaxerski

ananicy-cpp yeah, several distros come with it preconfigured out of the box. Same for system76-scheduler.
So config option or maybe check if the priority has been changed first and skip if it has?
I really don't like "a broken config", so checking it first will be better imo.

Can you reproduce on Sway? The affected Hyprland code is identical to Sway (except style).

Looks like setting SCHED_RR is just not compatible with external things that try and alter the nice value, which does make sense but is quite annoying.

Realtime scheduling (and negative niceness) usually requires extra privileges (or root). If you don't grant (or leak) CAP_SYS_NICE there shouldn't be a conflict.

Not sure what that has to do with anything, obviously both ananicy-cpp and hyprland have those privileges
After looking into it more, I've tracked down the problem to here:
https://gitlab.com/ananicy-cpp/ananicy-cpp/-/blob/master/src/worker.cpp#L125
It seems to be a linux kernel bug with realtime and cgroups that ananicy-cpp is trying to workaround, but it is just blindly applying it even if no cgroup has been selected in the ananicy rules for that process.
I'm happy to close this and the pr as this behaviour can be turned off in ananicy-cpp config and I am going to raise an issue on their tracker.

I had the same issue, I had to disable ananicy-cpp for kde polkit to work.


Form validation: dropdowns not generated, only value verified

If I create a model and define an int field with validation =
...
        "country_id": {
                        "presence": True,
                        'in': {'set': [0, 1], 'labels': ['Germany', 'Other']}
                      },
...

I would expect my dropdown menu to be displayed on registration. But it only shows a textfield where the input is only allowed to be 0 or 1. Any other value is denied. When I register with 0 or 1 and see at my profile I see that the value of country_id is "value".
Why is there no dropdown and why is country_id "value" and not 0 or 1 in my profile? If I look at my db, there is 1 or 0 stored, not "value" or nothing.
This is related to http://weppy.org/docs/0.5/validations#value-inclusion

@GiantCrocodile I will inspect this in the next hours.

@GiantCrocodile this is fixed on master and v0.5.3 release

Thanks @gi0baro. I really appreciate your work and fast support!


first try at compendium sidebar

Not 100% sure about everything here. Main open questions:

Some things look like they're marked protected in types that don't seem to have that annotation in the source
Does private in source -> @internal in types?
Not entirely sure about the Metadata at the beginning.

The general standard is that @private that doesn't correspond to a hard private (#) becomes @internal for us

As for the @ protected bit, that varies wildly — the core software has changed its stance on functions, but also mis-documents itself. There's also the chance that past PRs made mistakes.

The Metadata bit is used for the compendium property.


Error handling for timer traits

Pull request #67 adds a cancel method that returns a Result. We ended up discussing timer error handling in general there, but decided to move further discussion to a follow-up issue (this one).
I think we need to find answers to the following questions:

Can starting a timer fail? Not in the cases I've seen so far, but there might be hardware out there were it could.
Can waiting on a timer fail? This might fail due to user error (timer was never started).
Are we willing to complicate the traits, if it allows us to catch user errors at compile time?

cc @therealprof @jonas-schievink

Regarding question 3: In the other thread, I proposed a set of traits that allow us to catch errors at compile-time. Those won't work in practice, as it's impossible to use the traits without knowing about the implementation, making them useless. I plan to experiment with this idea some more (no timeline yet).

Re 1) Yes I would say so, e.g. because it already has been started.
Re 2) Potentially yes, but I don't think it is of big importance, also because it might end up being racy because at one point it might be necessary to decide what constitutes as an error (e.g. at which point is an expired timer an error and when is it just expected behaviour; what happens if a timer expired and you wait() for it a second time? Also how would you separate the cases "was never started" and "has expired"?

Another question:

Should error types be implementation-defined as associated types, or should we pre-define error enums? @jonas-schievink makes an argument that errors for cancel need to be well-defined. A combination of both approaches would be possible too. An error enum could pre-define some errors, but also have a generic variant for implementation-defined errors.

Re 4: I'm in favor of the combined approach

Re 1 and 2: I agree with @therealprof, but I think my assessment of importance is flopped. Either way, it's an argument for a combined approach for those error enums as well -- applications need to be able to distinguish the core "logical" errors from implementation-specific ones.
Overall, it seems like this is a step towards forcing applications to use more explicit error handling. While this is a good thing, it could be good to additionally add some additional trait functions with generic implementations that are either infallible (ignoring all errors) or return the "inner" error type (ignoring "generic" errors). Something like:
pub trait CountDown {
    type Time;
    type Error;

    fn start<T>(&mut self, count: T) -> std::Result<(), CountDownError<Self::Error>>
    where
        T: Into<Self::Time>;

    fn force_start<T>(&mut self, count: T) -> std::Result<(), Self::Error>
    where
        T: Into<Self::Time>;
    {
        match self.start(count) {
            Ok(()) => Ok(()),
            Err(CountDownError::AlreadyStarted) => Ok(()),
            Err(CountDownError::Other(e)) => Err(e),
        }
    }
}

pub enum CountDownError<T> {
    AlreadyStarted,
    Other(T),
}

(disclaimer: haven't tried compiling the above, I'm just providing it as a brief example. I also haven't thought through the function name to any deep degree)

Regarding the error handling discussion I would make an argument for error types instead of generic traits:
You cannot compose errors if you define them as traits.
To make this clear - here is an example a colleague of mine was facing, while trying to write an abstraction for a hardware display (it's not the original code, but a stripped down version):
// We have a display and some items like a SPI, that is defined by the traits from the embedded_hal library
impl<SPI, CS> Display<SPI, CS>
where
    SPI: Transfer<u8> + Write<u8>,
    CS: OutputPin,
{
    pub(crate) fn write(spi: &mut SPI, cs: &mut CS, command: Command) -> Result<(), DisplayError> {
        if cs.set_low().is_err() {
            /* error handling here */
            return DisplayError::CSErr;
        }
        if spi.write(&command.as_byte_array()).is_err() {
            /* error handling here */
            return DisplayError::SPIErr;
        }
        Ok(())
    }

}

So we have a function, that does two things - set some pin and do something with the spi. Both operations can fail and return an Error. What you usually do in this case (FYI: I am not an embedded programmer, maybe I am missing something why you use these traits, I just want to share my perspective), is to implement the From trait for your custom Error type, so that the "?"-operator can do it's magic, and you pipe the error outwards, so the caller can decide what to do:
    pub(crate) fn write(spi: &mut SPI, cs: &mut CS, command: Command) -> Result<(), DisplayError> {
        cs.set_low()?;
        spi.write(&command.as_byte_array())?;
        Ok(())
    }

Looks way cleaner. However, I cannot do this, if SPI::Error and CS::Error are defined as traits, because we don't know the types of these errors yet.
What I would expect from a library is to give me a set of defined error types, that I can then use to wrap in my own error types.
Think of the std::io library from rust - there is a std::io::Error in there, that is well defined. If there are some io::Errors I want to raise, that the designers of the std library did not think of,
I can just use the constructor of io::Error do define something more custom:
        std::io::Error::new(std::io::ErrorKind::Other, "Something unexpected happened");

So I am not bound to any limitations of the pre-defined error type, while still having one well defined type to work with

@dsxmachina If you are not interested in the contents of the errors, you should be able to do something like:
pub(crate) fn write(spi: &mut SPI, cs: &mut CS, command: Command) -> Result<(), DisplayError> {
    cs.set_low().map_err(|_| DisplayError::Cs)?;
    spi.write(&command.as_byte_array()).map_err(|_| DisplayError::Spi)?;
    Ok(())
}

PS: remember to set cs high again after the transfer.

Okay, thank you for the info - haven't found the other Issue (might have just searched for open ones). My point was the exact same as therealprof was making in the mentioned issue - I will take a look at the 1.0.0-alpha-0.8 where the changes are merged.
P.S: Thanks :) - but as I said, it's a very stripped down version of the original code. Just wanted to show you what I mean.

I'm going to close this, now that the old timer traits are removed #324.
Discussion for design for the new traits can go in #359 . Linking it so this issue appears there.


Component not showing up when used in .vue file

Hi, I followed the docs and set the plugin up. It works as a charm when included in a .md file but doesn't show up when included in .vue files. I get the following error in the console:
 Unknown custom element: <SimpleNewsletter> - did you register the component correctly? For recursive components, make sure to provide the "name" option.

Thanks for the nice plugin. Appreciate your help!

Thanks for the report. The import path of previous example was wrong. It has been updated.
Please check the docs again. Now, you don't need to import or register the component manually.


nginx: lua atpanic: Lua VM crashed, reason: not enough memory

Summary
nginx: lua atpanic: Lua VM crashed, reason: not enough memory
error.log
nginx: lua atpanic: Lua VM crashed, reason: not enough memory
2020/11/10 14:54:50 [notice] 82514#0: gracefully shutting down
nginx: lua atpanic: Lua VM crashed, reason: not enough memory
2020/11/10 14:55:05 [notice] 82514#0: gracefully shutting down
nginx: lua atpanic: Lua VM crashed, reason: not enough memory
2020/11/10 14:55:25 [error] 82514#0: *23951892 [kong] handler.lua:686 no router to route request (reason: not enough memory), client: <IP_ADDRESS>, server: kong, request: "GET /tensorboard/1/data/runs HTTP/1.1", host: "dbbxrejkckrnmls.intrabj.ncloud.navinfo.com", referrer: "http://dbbxrejkckrnmls.intrabj.ncloud.navinfo.com/tensorboard/1/"
2020/11/10 14:55:25 [error] 82514#0: *23952058 [kong] handler.lua:686 no router to route request (reason: not enough memory), client: <IP_ADDRESS>, server: kong, request: "GET / HTTP/1.1", host: "glumtlekfubmsga-board.intrabj.ncloud.navinfo.com"
2020/11/10 14:55:25 [notice] 82514#0: gracefully shutting down
nginx: lua atpanic: Lua VM crashed, reason: not enough memory
2020/11/10 14:55:26 [notice] 82514#0: gracefully shutting down
nginx: lua atpanic: Lua VM crashed, reason: not enough memory
nginx: lua atpanic: Lua VM crashed, reason: not enough memory
nginx: lua atpanic: Lua VM crashed, reason: not enough memory
nginx: lua atpanic: Lua VM crashed, reason: not enough memory
2020/11/10 14:55:26 [notice] 30146#0: signal 17 (SIGCHLD) received from 82514
2020/11/10 14:55:26 [alert] 30146#0: worker process 82514 exited on signal 11
2020/11/10 14:55:26 [notice] 30146#0: start worker process 27533
2020/11/10 14:55:26 [notice] 30146#0: signal 29 (SIGIO) received
Steps To Reproduce
Additional Details & Logs

Kong version (1.12)
installed by rpm package
Operating system
centos 7.6

error log:
system situation:
top - 12:37:50 up 100 days, 18:30,  3 users,  load average: 1.94, 1.97, 1.99
Tasks: 140 total,   3 running, 137 sleeping,   0 stopped,   0 zombie
%Cpu(s): 50.6 us,  0.2 sy,  0.0 ni, 49.0 id,  0.1 wa,  0.0 hi,  0.0 si,  0.1 st
KiB Mem : 16247524 total,  7254100 free,  5175080 used,  3818344 buff/cache
KiB Swap:        0 total,        0 free,        0 used. 10453956 avail Mem
PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
53260 nobody    20   0 2327016   2.0g   5868 R 100.0 12.8   2818:36 nginx
66611 nobody    20   0 2315568   2.0g   6060 R 100.0 12.7   2573:07 nginx
[root@10-70-160-179 ~]# free -m
total        used        free      shared  buff/cache   available
Mem:          15866        5053        7084         224        3728       10209
Swap:             0

Hello,
Could you try with the latest version of Kong (2.2)? 1.12 is very old and we stopped supporting it long time ago.

I will try


feat: SSA parser

Description
Problem
Resolves #6475
Summary
This PR introduces the Ssa::from_src method to parse SSA from text into Ssa. The code is first parsed into an intermediate (new) AST, then from it an SSA is created by using the existing FunctionBuilder.
Then, some existing tests are updated to use this form of creating the SSA instead of manually doing it with FunctionBuilder.
Some notes:

In the tests that I updated I also updated how the final SSA is checked: now we check that the string representation matches the one we expect, instead of manually checking some things. I think this is a bit more robust and shorter. And then, if we trust SSA parsing and SSA printing is correct (and I think we do because when we debug things we rely on the SSA output we get) then I think it should be fine to rely on this.
I had to change how some SSA are printed, specifically to include some types that otherwise can't be determined when parsing. For example, arrays flatten their values, so if we have [Field 1, Field 1] it could actually be an array of (Field, Field) but we can't know that. So, now arrays include their type, like this: [Field 1, Field 1] of Field (or whatever type they are). Other instructions like call, allocate and load specify what type they return with  -> types... at the end. I chose that syntax so that the types come at the end and one can still focus on the important bits on the left side.
The IfElse instruction is still not parsed in this PR. I couldn't find an example of it. But we can include it in a follow-up PR.
The optional assertion message in constrain and range_check isn't parsed (yet). This could be done in a follow-up PR, but my thinking here was that it's not important for tests, and it seems no tests actually use these strings (but it could be good to have for completeness)
I didn't update all tests to avoid making this PR bigger. I updated some tests to verify that the parser is working and that most, if not all, needed features are there. But we can update them in follow-up PRs, and even add more tests to existing passes that aren't tested.

Additional Context
Documentation
Check one:

[x] No documentation needed.
[ ] Documentation included in this PR.
[ ] [For Experimental Features] Documentation to be submitted in a separate PR.

PR Checklist

[x] I have tested the changes locally.
[x] I have formatted the changes with Prettier and/or cargo fmt on default settings.

I'll merge this now but try to improve the parsing error message in a follow-up PR.

I pushed a commit that will show errors in a better way. For example, here's one output where there's a typo:
called `Result::unwrap()` on an `Err` value:
            acir(inline) fn main f0 {
              b0(v0: Field):

                v1 = ad v0, Field 1
                     ^^
                     Expected an instruction or terminator, found ad

                v2 = mul v1, Field 3
                return v2
            }

I also renamed assert_ssa_equals to assert_normalized_ssa_equals because I figured it might be confusing if you print an SSA and get one value, that that value isn't equal to what that assertion is producing...


Update to Introtok8s Ch01 Containers

Made edits to IntrotoKubernetes Ch01 Containers:

Clarified flow & explanation about using either the student's own workstation, or using a linux build server
Removed requirement for students to run the app locally; instead I suggest that the coach demo this.  Reasoning:  this is a kubernetes hack, not a dev hack.
Significant edit:  I provide the Dockerfiles to the students, removing the requirement for them to create their own.  My reasoning is 1) this is a kubernetes hack, not a containers hack, and 2) based on my experience coaching similar hacks, such a task could consume significant time and take away from time spent on kubernetes topics.
I also add a warning in the coach notes to timebox this challenge.  Again, based on my experience, students can get stuck on this challenge and consume too much time on it.

I'm closing this because:

Lots of the edits are opinion/style, so not fair to expect content owners to change the content based on my point of view
There have been updates to Challenge 1 after I created this PR

I'm going to think about the best way to improve challenge 1 in order to let the coaches deliver this via a number of different options; eg 'pick your own adventure', where one path is the whole thing, another path provides the docker files, another path uses 'az acr build' etc.


Pods with status Complete still shown

I have some pods that stay with status complete after CronJob ran. But they are still shown in a list
Any plans to make feature for namespace resource quota?
Thank you for a great tool!

Hey @Paxa, I actually pushed a release (0.1.3) earlier today that should fix that. If you installed kube-capacity with brew, a simple brew upgrade kube-capacity should work. If that's still broken let me know and I'll take a closer look.


add "Create service with template" link

Done

LGTM, thanks a lot!

No problem, glad to be helpful


upgrade to gradle 4.1

Coverage remained the same at 29.463% when pulling 479d38b8b934cebcd90f8cd27c59742ca1eb37cb on asolntsev:upgrade-gradle into e22d2758bd955b8ad27786dbc56a5669608d2476 on alfa-laboratory:master.


added documentation to Advanced_Statistics page to help the user

Added some documentation to the advanced statistics page, more to add later but this allows the user to know what each of the values they're choosing are related to


Log project structural information

Added some cells in the notebook created for #56 to derive structural information about the project.
This searches the last folders (e.g session folders) in an arbitrary root folder for their files, then allows you to output information organized by unique file types (e.g. cell_metrics.cellinfo from xxx.cell_metrics.cellinfo.mat).
Based on this, you can refer to the outputted _json_files/project/data_inconsistencies.json file to see which files are missing data that are present in other project files that match its type.  This simply compares the keys between each file's build_keys_and_types output between sessions—though this could be extended to validate the consistency of the actual (meta)data values.

Note: The data.json file that this depends on takes a while to be generated. However, subsequent code will refer to the saved JSON file so we don't need to rerun this until we change the root scope.

Let me know if there're any changes to the output files that would improve their usefulness—or whether an alternative approach is warranted.

Here you go:
project_info.zip

Nice. I briefly checked the files that you shared with @CodyCBakerPhD. In my view, the most important information is whether any subject/session lacks any of the files in the others. Do I read correctly missing_files.json as indicating this is not the case?

Also, data_inconsistencies.json is tracking whether some of the fields / cells / specific values in the matlab files are missing, right? This willl be useful later, once we decide what are the important fields.

Nice. I briefly checked the files that you shared with @CodyCBakerPhD. In my view, the most important information is whether any subject/session lacks any of the files in the others. Do I read correctly missing_files.json as indicating this is not the case?
Also, did you do this for dates other than e13? That's the only mention I see in the files.

Yep you've got the right idea there. Same for the data inconsistencies file.
I've only brought sessions from e13/e13_16f1 onto my system so far, so that's why they're the only ones found.

One question I have is:
What about the files with the leading dot. I did not see that in the session that I checked. Do they have the same information?

I manually filtered these files out since they're hidden on my system (Mac). It looks like these are unreadable by loadmat_scipy. Did you try reading any of them yourself?


This IP address (<IP_ADDRESS>) attacked my server and deployed mining software at 12:16:25 on November 29, 2023, Beijing time today.

Virus name: Linux.Risktool.Bitcoinminer.Ztjl
filename：xmrig
md5:7c631fca21e348ae4c3408ddd400b416

this (ipsum) list is not meant for manually reporting IP addresses. it is just an aggregate. you should use specialized web pages, such as https://www.abuseipdb.com/


chore: add conditional variable for creating resource group

📲 What
Adds a conditional variable for creating a resource group.
🤔 Why
So a variable can be set to force creating a resource group if required.
✅ Acceptance criteria Checklist

[ ] Code peer reviewed?
[ ] Documentation has been updated to reflect the changes?
[ ] Passing all automated tests, including a successful deployment?
[ ] Passing any exploratory testing?
[ ] Rebased/merged with latest changes from development and re-tested?
[ ] Meeting the Coding Standards?

/azp run


Intersection fails if more specific type comes last, again

This is kind of a dup of https://github.com/facebook/flow/issues/2074, except it's not. That issue says that in the code below FooBar type would behave as Foo, however it produces an error. The reason for the error is not clear since the value satisfies both types.
type Foo = {
type: string,
};
type Bar = {
type: 'specific',
};
type FooBar = Foo & Bar;
({type: 'specific'} : FooBar); // error

If you think about it, this should be an error. Let's say it's not and you write:
const a: FooBar = { type: 'specific' };

By definition, if a has type A & B it has type A and type B, so the following should be correct:
const b: Foo = a;
const c: Bar = a;

If b has type Foo, then you can do b.type = 'foo', but c points and the same object, so its type becomes incorrect. Hence,  {type: 'specific'} is not of type Foo & Bar.

To me this argument only says that "the following should be correct" is in fact incorrect. It seems to be similar to why you can't do ' list apples; list fruits; fruits = apples; ' in C++.
Also, the same argument applies to Bar & Foo, however according to the explanation in the original issue an object of type Bar&Foo is not necessarily of type Bar, since Bar&Foo behaves simply as Foo.

This is by definition of intersection. If invariant A <: A & B does not hold, it's not intersection

Which definition? Mathematical one implies that intersection is symmetrical, but it's not symmetrical in flow (see the original issue). Also, here's a simple example that shows that the above argument about b changing type is invalid, object does in fact change its type (or rather the set of types it has) when it's modified:
type X = { x: string };
type Xa = {x:'a'};
type Xb = {x:'b'};
x = {x:'a'};
(x:Xa); // no error
x.x = 'b';
(x:Xa); // error, x is no longer Xa

In your example there are no contradicting references to the same object, hence no unsoundness. Otherwise it would be a bug


Update Composer dependencies (2023-03-04-00-10)

Visual regression test passed!
View the visual regression test report


PopupMenu report runtime error when set accelerator

Godot version
v4.1.beta3.official [ada712e06]
System information
Windows 10, 64bit
Issue description
I want set my File/New menu's accelerator to Ctrl+N, and the docs say:

And then run, everything work but I found it report runtime warning:

Steps to reproduce
/
Minimal reproduction project
MenuTest.zip

Does this go away if you follow the suggestion?

Does this go away if you follow the suggestion?

Does I use wrong way withmenu.set_item_accelerator(1,KEY_O|KEY_MASK_CTRL) ?
If it is and I want set accelerator with Ctrl+O, How should I do?

This is probably due to an incorrect configuration for keys, but it's difficult to say exactly how to set them up internally as they're not exactly a bitmask and not exactly an enum, will investigate further, to avoid this you can add:
@warning_ignore("int_as_enum_without_cast", "int_as_enum_without_match")
Before the line you're doing this in, as a workaround

Related to https://github.com/godotengine/godot/issues/40836 and https://github.com/godotengine/godot/issues/69265.

It like was fixed in 4.2 dev3


flow config instructions needed

please add instruction to read me how to configure flow with the library,
4 hours wasted in attempts to make
module.name_mapper='^rmwc/(.*)$' -> '<PROJECT_ROOT>/node_modules/rmwc/\1'
module.name_mapper='^rmwc$' -> '<PROJECT_ROOT>/node_modules/rmwc/'
work, but without any result, anyway I get an error on every
import { Snackbar } from 'rmwc/Snackbar';
^^^^^^^^^^^^^^^ rmwc/Snackbar. Required module not found

ok, finally I got some progress
had to update flow to the latest version,
remove
'suppress_comment= \(.\|\n\)*\$FlowFixMe'
from .flowconfig

The latest version makes sense, not sure why you’d have to remove FlowFixMe from your config although I believe flow includes that rule automatically now.

@veonua anything else on this?

can you please add some info to readme so future developers would have more
smoothier experience with rmwc + flow
On Fri, Jun 1, 2018, 23:41 James Friedman<EMAIL_ADDRESS>wrote:

@veonua https://github.com/veonua anything else on this?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jamesmfriedman/rmwc/issues/231#issuecomment-394003293,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABeALt8wDyzB5Bm5-uEe84D_l96wa83Jks5t4ab0gaJpZM4UGCWX
.

@veonua what would you like me to add? There isn't any configuration required. What version of Flow ere you on before?

Added a brief section on troubleshooting in the getting started guide. Will be live with the next release


New Genebass curation and other improvements

This PR contains:

Harmonisation of AZ traits to the common label to EFO curation file
Harmonisation of the EFO codes: we no longer use the URL, but the IDs
Inclusion of the Genebass trait curation to the common label to EFO curation file

Sorry to comment on the closed PR (unfortunately I didn't manage to review it yesterday), but this change:

Harmonisation of the EFO codes: we no longer use the URL, but the IDs

Unfortunately breaks the 8-column ZOOMA-compatible format we're using, because it requires a full URI, not a short identifier

(This means that we won't be able to use this file as our primary and only ZOOMA feedback source, as we intended)


Provide per-project configuration

My use-case is to not run cargo on the whole workspace in a repository I'm working on but only on the single crate that is currently being worked on. Globally this can be configured but I don't think there's per-project configuration (e.g. via some configuration file at the root of the repository).

Currently the only way to do it per project is if your editor supports it(VSCode being one example here that enables this), we would like to have a per project rust-analyzer.toml(or use the metadata section of a Cargo.toml) or similar from what I remember(the idea about this is split over a bunch of issues I think).


Play button doesn't animate on first click on mobile

The play button doesn't switch to a pause button on the first press on mobile.

Fixed by switching to .onplay and .onpause in 61bb25386066b3ccfd84f41e240d5c0151a84b20


Create Separate Pages for Form Components

Summary
The terra-form site page was very long and difficult to use. This PR breaks out each form component's documentation and examples into their own sub-pages which are linked from the terra-form site page. Now the terra-form page gives navigations to the subcomponents and displays a full example.
Addresses issue #447.
@cerner/terra

From looking at the PR, it would be great if we could always have the sidebar navigation present. I don't like how I have to click the upper left click both times to get to the homepage.
If we can't get the secondary navigation always present, perhaps we can use modals to display all of the form examples?

@StephenEsser @JakeLaCombe I updated the side navigation to display the form components under the form link with a bit of padding to indicate the sub-navigation. Let me know if this is what you might have expected.

That looks great!
One thing we should do is move the gigantic controlled input form into it's own page IMO. I think the small controlled and uncontrolled sections on the main page is enough to detail the difference between the two.

@JakeLaCombe I put the full code example in a toggle button so people can open or close if they want to view the source code of the example.

Looking great!
My only remaining section is to add a header right after the uncontrolled doc section that says 'Full Functional Example' or something like that.

I created a new branch and opened PR #718 to track down the Travis failure.
It looks like the issue with the PR was the styling fix I had applied to the site page. Before the css modules conversion, each page of the application had a padding style applied, with the conversion, this styling was lost on the component test links pages and example pages. To fix the styling, I had wrapped the site Router in a div that applied the padding.
This was the same change I made to terra-clinical's site page, so I am not sure why this caused Travis to fail in terra-core. Regardless, this was an extra nicety that should not hold this PR back, so I remove the code change.


Changing every file regardless of changes

It would be great if unchanged files would stay untouched. it is really a pain to work with git up to now because every svg in the directory gets touched regardless if there where any changes to it or not. I am never certain if only the right ones got changed.
Really loving svgo though.

I seems like under some circumstances the attributes just get reordered which is a change even thought it is not really changing the svg.


Remove gem update --system before install on CI

It seems like resolved.
More info: https://github.com/travis-ci/travis-ci/issues/8969

@rafaelfranca I'm trying to figure out what is broken our tests. I'm pretty sure that it's because of the last version of nokogiri.


TextBox: Using Ctrl+Backspace for deleting words

In most input parts of Windows one can use Ctrl+Backspace for deleting words. However this does not work for the classic Text/TextBox control, where pressing Ctrl+Backspace inserts the delete character (0x7F), which gets rendered as a box:

One specific location where this happens is when renaming files in explorer:

It would be nice, if that keyboard combination could consistently delete whole words.

i rename files very often and this is out of scope... what sort of bugs are in scope other than performance bugs? @bitcrazsed

It's a blurry line. Primarily, this repo is about issues impacting your ability to successfullly and efficiently develop code on Windows ... whatever code/tech-stack that is ... and would like to engage in a bidirectional conversation if required, then this repo is the place  to file such issues.
We may well ask you to file issues in FBHub instead if they're more of a general UX issue so that the feedback can be routed to the teams that own the specific features.
We may also ask you to file FBHub issues, in order to securely and safely capture and submit a repro trace to help is track down an issue.
In this case, the issue is general UX feedback that applies to a broader audience and likely doesn't require a back and forth to diagnose, hence the request to file via FBHub instead.

@bitcrazed ok but why have issues like the slow ass jumplists remained open?


Add a check that CloudWatch Events Rules have <= 5 targets

cfn-lint version: (cfn-lint --version) 0.5.0 (but nothing changed since afaict)
Description of issue.
CloudWatch Events has a limit of 10 targets per Rule, but this isn't validated by ValidateTemplate or cfn-lint's rules. Consequently one has to wait til deploy time to discover this error message:

CREATE_FAILED: At most 10 targets allowed.

Failing template:
Resources:
  MyCronRule:
    Type: AWS::Events::Rule
    Properties:
      ScheduleExpression: cron(0 6 * * ? *)
      Targets:
      - Id: Job1
        Arn: arn:target
      - Id: Job2
        Arn: arn:target
      - Id: Job3
        Arn: arn:target
      - Id: Job4
        Arn: arn:target
      - Id: Job5
        Arn: arn:target
      - Id: Job6
        Arn: arn:target
      - Id: Job7
        Arn: arn:target
      - Id: Job8
        Arn: arn:target
      - Id: Job9
        Arn: arn:target
      - Id: Job10
        Arn: arn:target
      - Id: Job11
        Arn: arn:target

I'll also take a look at a PR myself if I find the time

According to https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/cloudwatch_limits_cwe.html the limit is actually 5 targets per rule. At 8 targets I get a different error message to at 11 targets:
$ aws events put-targets --rule test-limits --targets '[
    {"Id": "Test1", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test2", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test3", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test4", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test5", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test6", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"}
]'

An error occurred (LimitExceededException) when calling the PutTargets operation: The requested resource exceeds the maximum number allowed.
$ aws events put-targets --rule test-limits --targets '[
    {"Id": "Test1", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test2", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test3", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test4", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test5", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test6", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test7", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test8", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test9", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test10", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test11", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"}
]'

An error occurred (ValidationException) when calling the PutTargets operation: At most 10 targets allowed.

This might imply the ability to use 6-10 targets is possible with a limit increase, although such a limit increase isn't documented. I've reported to support.

Support confirmed there's no limit increase possible, just a weirdness of the API that it returns two different error messages at different numbers of targets. So a hardcoded limit of 5 would be fine in cfn-lint.

Thanks for checking that should make things easier.  It would have been an odd rule if it was a soft limit.

According to https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/cloudwatch_limits_cwe.html the limit is actually 5 targets per rule. At 6 targets I get a different error message to at 11 targets:
$ aws events put-targets --rule test-limits --targets '[
    {"Id": "Test1", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test2", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test3", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test4", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test5", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test6", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"}
]'

An error occurred (LimitExceededException) when calling the PutTargets operation: The requested resource exceeds the maximum number allowed.
$ aws events put-targets --rule test-limits --targets '[
    {"Id": "Test1", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test2", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test3", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test4", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test5", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test6", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test7", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test8", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test9", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test10", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"},
    {"Id": "Test11", "Arn": "arn:aws:lambda:us-east-1:123456789012:function:example"}
]'

An error occurred (ValidationException) when calling the PutTargets operation: At most 10 targets allowed.

This might imply the ability to use 6-10 targets is possible with a limit increase, although such a limit increase isn't documented. I've reported to support.

The maximum target is still 5 and is not adjustable Doc.
The "At most 10 targets allowed" error is because the request exceeded the maximum rule per request, which is 10


fix(ngAria): change accessibility keypress event to use event.which if it is provided

fix(ngAria): change accessibility keypress event to use event.which if it is provided
In Firefox, keyboard events for printable characters (e.g. space) do not use event.keyCode. Use event.which if it is provided before falling back to event.keyCode.

Oops, this computer had my git email set to another one of my emails. I've signed a CLA using that other email as well.

I authored the commit, and both emails are mine.

:+1: nice work!

MDN says:

Warning: This attribute is deprecated; you should use key instead, if available.

Why do we want to use this?

Okay, so DOM 3 keyboard events say you want to use key and check for values Enter or ' ' --- but the various DOM level specs are so crazy and not consistently followed, that it's really hard to come up with anything concrete as a suggestion.
I think it might be wiser to use key if it's available, though.

@caitp According to MDN, the keypress event does not populate key and there are a number of related bugs in FF. (Chrome and Safari don't see to populate key at all, according to MDN compatibility tables).
See:
https://developer.mozilla.org/en-US/docs/Web/Events/keypress
and also the related bugs:
https://bugzilla.mozilla.org/show_bug.cgi?id=680830
https://bugzilla.mozilla.org/show_bug.cgi?id=900372
I'm more than happy to update the PR as needed.

The API is also slightly different, which uses key values (string names) instead of keyCodes, but that is easy enough to fix.

I'm aware of that --- but I think we should go with the most consistent implementations of the most recent DOM events spec. Anyway I stopped caring, lgtm

FWIW, D3E KeyboardEvent is a work in progress in Blink (https://crbug.com/227231), there seem to be some issues with different vendors shuffling around different versions of the draft, which is making things difficult and slow in the classic W3 style. Blink and WebKit currently both implement a keyIdentifier (and apparently have for a number of years) in KeyboardEvent, which has been removed from D3E for some time (last seen in a 2009 version of the draft, http://www.w3.org/TR/2009/WD-DOM-Level-3-Events-20090908/)
It's kind of amazing that WK/Blink are so far behind in this area

@caitp What do you think is the best way forward is for this PR? Would you like to see me try and incorporate DOM Level 3? Or do you think this PR still looks okay?
My current understanding is as follows:

Browser
KeyboardEvent.key
keyIdentifier
event.which

FF (<37)

x

FF (>37)
x

Chrome

x

Safari

x

IE9
x

IE10
x

IE11
x

Source for FF: https://bugzilla.mozilla.org/show_bug.cgi?id=900372
Source for IE: https://msdn.microsoft.com/en-us/library/ie/ff974892(v=vs.85).aspx
Source for Chrome: https://crbug.com/227231

What you have is fine for now, I had said LGTM above


set & mset fails when memory is about to be full but available

Hi,
I faced an issue, might be doing something wrong, kindly assist on this.
When i try to use mset or set command on a redis using StrictRedis client, it gives me following error.
redis.exceptions.ResponseError: OOM command not allowed when used memory > 'maxmemory'.
But when i see redis server, it isn't full. About 5% of memory is still free.  Kindly let me know if i am missing something.
Thanks

redis-py is only returning what the server returns. In this case, the server is returning OOM command not allowed when used memory > 'maxmemory'.
I'd suggest posting on the redis-dev mailing list. Closing this since it's not a redis-py issue.


Evaluator Review: Neutroswap Milestone 3 #164

Review, approve, or deny https://github.com/eosnetworkfoundation/grant-milestones/pull/164.

Closed per @wanderingbort approval for https://github.com/eosnetworkfoundation/grant-milestones/pull/164.


Improve handling of superglobals and globals that are passed to functions expecting references

Check if the function would cause it to become an incompatible type, for superglobals such as $_POST
Warn if it's a regular global that was undefined
Try to limit overrides to the scope of the files, treat assigning by = and assigning type by reference consistently
Add tests

Mentioned in https://github.com/etsy/phan/issues/848#issuecomment-309630058

My apologies, I pasted the wrong example in #848 .  To reproduce:
<?php

$x = array_shift( $argv );

if ( $argv )
    echo "Argv yes.\n";
else
    echo "Argv no.\n";

echo $argv[ 0 ], "\n";

Sorry about that!

Ok, I can reproduce that.

To exonerate array_shift:
<?php
if ( $argv )
	echo "Yes.\n";

produces:
$ phan argv2.php
argv2.php:2 PhanUndeclaredVariable Variable $argv is undeclared

echo $argv ? 'args' : 'no args'; has a similar/same issue.
I assume this has to do with BranchScope or another Scope subclass with a pointer to GlobalScope failing to realize that BranchScope also has access to variables in the global scope.

Also, this seems to be ignoring the setting 'ignore_undeclared_variables_in_global_scope' => true if it is set.

The examples given were fixed in #929


Adsk Contrib - Fix some SonarCloud blockers

Signed-off-by: Patrick Hodoul<EMAIL_ADDRESS>Even with the noise in the SonarCloud report, it indirectly highlighted some issues around Grading Ops and Dynamic Properties so I fixed them plus other blockers.

Hi @michdolan and @doug-walker,
The pull request now contains some fixes for Clang 12 (macOS Catalina with XCode 12).
Could you review it soon to unlock my other branches?


Why 'Refreshing messages failed. Pull up to try again.' always showing?

Submit feature requests to http://www.mattermost.org/feature-requests/. File non-security related bugs here in the following format:
Summary
After pressing the 'Mark as Unread'  button in a conversation, the following message is always displayed.
The message 'Refreshing messages failed. Pull up to try again.'  always appears at the top.
Environment Information

Device Name: iPhone XR
OS Version: 13.3.1
Mattermost App Version: 1.28.0
Mattermost Server Version: 5.20.1

Steps to reproduce
Press the 'Mark as Unread'  button in a conversation.
The message 'Refreshing messages failed. Pull up to try again.'  always appears at the top.
Expected behavior
The message should not always appear.
Observed behavior
Mattermost from App Store
-> The message does not appear.
Mattermost(IPA) from the source(But, change bundleID)
-> The message always appears.

Hi @bitdessert is there anything else modified other than the bundleID?

No. just BundleID changed

Closing because of the age of the issue. If you are seeing this in the latest versions, feel free to reopen the issue.


Fix typo in system module

Fix typo in system module.
@ito-san
The followings are just my humble suggestion. Do you have any other good words to replace them?

entried -> appended
spinned -> spin()

@kmiya Could you confirm the failure reason of CI and fix it?

Tests have passed :tada:


[DS-2712] Fix DatabaseUtils class, migration issues and altered the ant update fresh_install scripts to migrate database

For more information see: https://jira.duraspace.org/browse/DS-2712

:+1:  This fixes the issues with database migration on ant update, and the spring service manager appears to start up properly. This looks good to me, and should get merged into services shortly.
Prior to this fix, I was having issues with my REST refactor of services.
https://github.com/DSpace/DSpace/pull/1026

Failed to startup the DSpace Service Manager: failure starting up spring service manager: null
Failure during filter init: Failed to startup the DSpace Service Manager: failure starting up spring service manager: null:java.lang.RuntimeException: Failed to startup the DSpace Service Manager: failure starting up spring service manager: null

I then pulled this fix down, rebased REST on top, and voila. Things are working. Here's a link to my gist of the migrate_database output. https://gist.github.com/peterdietz/1e6c554d5afa1b47e34b
There's no warning that a very long migrate_database is about to occur, so I thought the script froze, just lots of postgres work happening.
Also, with REST working on top of this, it sort of validates that services is going to work out.
Definitely crossing the streams, but to get REST working, start from DSPR#1027, then rebase DSPR #1026 on top. REST wants you to use https, but to avoid that, edit /dspace/webapps/rest/WEB-INF/web.xml CONFIDENTIAL to NONE, and restart tomcat.
http://localhost:8080/rest/communities/top-communities
http://localhost:8080/rest/items
Are working. I'm getting data, I'm seeing UUID's.

:+1: This looks good to me overall. I'll admit, I'm slightly disappointed that we no longer have a "database test" option, but I understand @KevinVdV's reasoning (in the ticket comments).  I'm also hoping eventually we can remove the database migration from "Ant" control again, as I see this as a slight step backwards (I'd really like to get to a place where Ant isn't necessary to do a DSpace deployment).  But, there so many good fixes here, I don't see a reason to hold this back.

This is very helpful to have the database migration, and hibernate working better. Merging.


Fix the issue with articles featured in section

@bruskiza @miltontony ready for review :)

:+1:

+1


Allow to remove device information from junit report

Hi 👋
This PR is an implementation of the discussions in https://github.com/XCTestHTMLReport/XCTestHTMLReport/pull/115

@tylervick One detail: I noticed the version 2.2.2 was not updated in the source code during last release

@tylervick 👋 🙂 Any chance of getting your opinion on this? 🙏

Great job!

Adding it here for context: there was an alternative proposal of using properties tag to convey the platform information. I implemented it here, but in the end decided to discard it due to reasons explained here

@tylervick One detail: I noticed the version 2.2.2 was not updated in the source code during last release

🤦 we need a version bump job or something for this. It's unfortunate that SPM doesn't really have a good versioning paradigm..
I'll be sure to bump the version before releasing this :)


Verify slice projection theorem

I used your code to construct projections from 3D volume to verify the 3D slice projection theorm but failed. Have you tried the verificatio?

@Erhushenshou you have not specified what you tried or how you evaluated it...

yes, that is what is implemented here - for cubic volumes with even dimensions only


Support LDAP authentication

This is of interest to @prjemian.
I think this would be a straightforward extension of what we have. Just needs the focused effort to get it done.
Useful reference: https://github.com/jupyterhub/ldapauthenticator/blob/master/ldapauthenticator/ldapauthenticator.py

Done in #207


Query with >= 2 joins, query builder is adding the database prefix to fields when aliasing a table name, but not to the aliased table name

Say I have the following DB configuration:
	'connections' => array(
		'mysql' => array(
			'driver'    => 'mysql',
			'host'      => 'localhost',
			'database'  => 'mydb',
			'username'  => 'root',
			'password'  => '',
			'charset'   => 'utf8',
			'collation' => 'utf8_unicode_ci',
			'prefix'    => 'prefix_',
		),
	),

In a query built with two or more joins, if I alias each table:
$result = DB::table('services')
			->join('translations AS t1', 't1.item_id', '=', 'services.id')
			->join('translations AS t2', 't2.item_id', '=', 'services.id')

The expected result would be:
SELECT `prefix_services`.`id`, anything
INNER JOIN `prefix_translations` AS `t1` ON `t1`.`item_id` = `prefix_services`.`id`
INNER JOIN `prefix_translations` AS `t2` ON `t2`.`item_id` = `prefix_services`.`id`

or even...
SELECT `prefix_services`.`id`, anything
INNER JOIN `prefix_translations` AS `prefix_t1` ON `prefix_t1`.`item_id` = `prefix_services`.`id`
INNER JOIN `prefix_translations` AS `prefix_t2` ON `prefix_t2`.`item_id` = `prefix_services`.`id`

Instead it generates the below, of course MySQL complains of "Column not found" since there is no prefix_t1, only t1:
SELECT `prefix_services`.`id`, anything
INNER JOIN `prefix_translations` AS `t1` ON `prefix_t1`.`item_id` = `prefix_services`.`id`
INNER JOIN `prefix_translations` AS `t2` ON `prefix_t2`.`item_id` = `prefix_services`.`id`

This way I'm having to manually add the prefix when aliasing the table name:
$prefix = Config::get('database.connections.mysql.prefix');
$result = DB::table('services')
			->join('translations AS ' . $prefix . 't1', 't1.item_id', '=', 'services.id')
			->join('translations AS ' . $prefix . 't2', 't2.item_id', '=', 'services.id')

@taylorotwell Is this fixed in the later version? I'm stuck here and forced me to use raw queries. Thanks!

Aside:  I miss writing SQL.


feat: Azure Blob Rehydration Receiver

Proposed Change
Adds the Azure Blob Rehydration Receiver. The receiver is meant to be used to rehydrate OTLP data that has been exported using the Azure Blob Exporter.
This is not a traditional receiver in the sense that it continuously gathers data. It rather rehydrates all blobs within a specified time range. Then rechecks on an interval if any more blobs were added to that time range. It will not produce any more data after the initial rehydration is completed.
Checklist

[x] Changes are tested
[ ] CI has passed

Could ending_time be made optional? If unset, it runs forever? I think the hacky workaround is to set before / ending dates to extremely far out values. Is this a bad idea?

I ran this by product originally and the request was for an exact rehydration period.

Should we document how timestamps are preserved? Reading metrics from months in the past will not be useful on most platforms

I'm not sure I really do think rehydration is most effective for logs or moving between say Azure and S3 storage for any OTLP type. I think this receiver is a very specific use case and we may need to iterate on it if it doesn't quite fill customer needs as is.

The Azure Blob exporter is not setting log timestamps (or should this be the job of the producing receiver?). This might be outside of this PR's scope but I think we should address it.

I think this is the original receiver. The exporter should just turn the logs into OTLP json and store them.

The Azure Blob exporter is not setting log timestamps (or should this be the job of the producing receiver?). This might be outside of this PR's scope but I think we should address it.

I think this is the original receiver. The exporter should just turn the logs into OTLP json and store them.

My mistake, the log timestamps are correct:
ObservedTimestamp: 2023-10-12 13:41:00.867006207 +0000 UTC\n
Timestamp: 1970-01-01 00:00:00 +0000 UTC


Does not run in Node.js

Because of this evaluation of self, qwest explodes in the node environment.
/Users/guilherme/Projects/VTEX/render/node_modules/qwest/src/qwest.js:5
    var global = typeof window != 'undefined' ? window : self,
                                                         ^

ReferenceError: self is not defined
    at /Users/guilherme/Projects/VTEX/render/node_modules/qwest/src/qwest.js:5:55

Do you want me to add a condition to use global or is Node not intended to be supported by qwest?

Qwest is based on XHR, which is only available on browsers, isn't it? Then, Node will never be supported ^^

Derp! Didn't notice that. 😁
Thanks!

Ahah np ^^

I fell for this recently, even if qwest is for browsers, usually some of us build our assets using node, and qwest fails. For example, when optimising js using the requirejs optimizer, same error occurs. I feel this needs attention, no?

It sure does. What are the errors you encountered?

Ok, I will fix this issue with the upcoming v5 version (a complete rewrite).

Mmmmh... I was thinking... If you're building your assets under node, and you encounter a bug with an undefined variable because the variable is not defined in the current environment, shouldn't you define vars to ignore (like with jshint) instead of relying on qwest to support this environment?

For now, I'm closing this issue until new thoughts on this ;)


Need light theme on https://ecoji.dev/

In the year 2020, it is hard to take a corporation seriously if it does not offer its customers a light themed website. The benefits of light themes were known by the ancient philosophers to improve one's virility and avoid the serious risks associated with exposure to dark themes, such as premature opening of the third eye.
I'm afraid I cannot make an investment in this venture until you take steps to address this concern.
Looking forward to hearing from you,
Sandy

Closing this. The team has not received a sufficient response in the form of financial investment.


Slow config file search in projects with many directories

I'm currently profiling various linting setups of the project's I have access to and noticed that a noticeable chunk is spent on trying to resolve config files for prettier. Prettier in turn uses cosmiconfig to find the config file. Searching for the config files gets seemingly slower the more folders a project has. In my case it consumes about 5% (~9s) of the total linting time for searching for config files. This is a project with a lot of folders.
I went ahead and logged patched cosmiconfig locally to log out every file it tries to read to count them. It looks like it's trying every directory for config files and ultimately this ends up in 14k file system calls during the linting task. The thing is that the project only has one config for prettier and that is located at the project root. No further prettier configurations exist. Therefore those 14k file system calls could be avoided and are in vain.

The normal behavior should be that if you run the prettier CLI from the project root folder (which should always be the case if you run it via npx or package scripts), it shouldn't look in more places than a few different file names in that folder.
Can you paste that list somewhere (probably external)? Redact parts of the folder names if you want, but try not to remove complete lines or make them completely unreadable.
Also, can you give me the following things:

The exact node version you're using to run prettier
The exact version of prettier you're running
Your OS with version (if Windows, maybe even the exact build shown by winver)

This can probably be fixed with some statefulness on cosmiconfigs side using a filesystem cache. Certainly would welcome a PR!


Multiple level logging

Would be better than simple prints.

Closed with 534bb566bed29c02c0636e84e482602a77496499
we can now use
Logger.Info()
Logger.Debug()
Logger.Warning()
...

It prints

Time
Operation queue label
File and method
Line


feat(client): replace draft number with branch name when upload dataset

Pull Request Test Coverage Report for Build 924344578

26 of 26 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.07%) to 85.589%

Totals

Change from base Build 924290835:
0.07%

Covered Lines:
4864

Relevant Lines:
5683

💛  - Coveralls


@mail731212

@mail731212
Originally posted by @mail731212 in https://github.com/tronprotocol/java-tron/issues/5259#issuecomment-1575678386

@mail731212

@mail731212

@mail731212

@mail731212
Originally posted by @mail731212 in https://github.com/tronprotocol/java-tron/issues/5259#issuecomment-1575678386

@mail731212
Originally posted by @mail731212 in https://github.com/tronprotocol/java-tron/issues/5259#issuecomment-1575678386

@mail731212
Originally posted by @mail731212 in https://github.com/tronprotocol/java-tron/issues/5259#issuecomment-1575678386

@mail731212
Originally posted by @mail731212 in https://github.com/tronprotocol/java-tron/issues/5259#issuecomment-1575678386


Global set

Is there any way to globally use set on the request object?
I'd like all requests to use application/json instead of text/plain for the Content-Type header.

Related to #393 basically need to add an optional options parameter for setting defaults.
lodash merge function to combine the optional user params with default properties.


Added visilisation method to gensim_engine class

Thank you for this @drystonecoding We might need to add pyLDAvis to requirements.txt. Apart from that, it's good to merge.


Fixed broken links in gke-monitoring

Part of fixes for issue# 1683.
@sarahmaddox
I have changed the origin broken url:
https://github.com/kubeflow/kubeflow/blob/master/kubeflow/gcp/metric-collector.libsonnet#L83
to
https://github.com/kubeflow/kubeflow/blob/master/metric-collector/service-readiness/kubeflow-readiness.py
I am not sure whether this is correct. Can you have someone familiar with this to review? Thanks!

This change is

/assign @sarahmaddox

Thanks @janeman98!
@Bobgy Please would you take a look at the example and advise if it's correct or if there's a better example to link to?
/assign @Bobgy

Sorry, I don't have knowledge on this either.
/assign @jlewi

/assign @kunmingg
This entire page is probably out of date. One solution would probably just replace the entire page contents with a message telling people to check out
https://cloud.google.com/monitoring/kubernetes-engine/prometheus
@kunmingg do we have any guidance to offer users beyond what's on that page.?

Hi @kunmingg
Any update on this? If not, I will just replace the entire page contents with a message telling people to check out other page as Jeremy suggested above.

@janeman98 Please would you replace the entire contents of the page with a short description of Prometheus (like the one on the Cloud page) and a link to the the Cloud page.
Please would you also create a Kubeflow website issue asking whether there's any useful info we can grab from this page in the Kubeflow v0.7 docs (that is, an older version of this page). Assign the issue ro @kunmingg for investigation. :)

Preview: https://deploy-preview-1748--competent-brattain-de2d6d.netlify.com/docs/gke/monitoring/


Sharp ignores dominant-baseline when converting SVG to PNG

Using sharp version 0.26 but it happens in older versions too.
The dominant-baseline attribute is used to align text vertically on SVGs.
When converting an SVG to a PNG, Sharp ignores dominant-baseline. See table below for an example of an actual SVG with different values for dominant-baseline and on the right side the resulting converted PNG.

SVG
PNG

I've created a repo that includes a sample SVG and the script used to convert the SVG to a PNG.

Hi, did you see #1996 ?

@lovell ah! I missed that one sorry.


Merge pull request #1 from kaejoi1010/readme-edits

Update README.md
Hello world,
Just another repository
Kaela Here. I enjoy an adventure, I love rollercoasters and always wanted to try scuba diving. I'm friendly and outgoing and always ready for a challenge. I believe in growth and success. Meditating relieves my souls and staring into the galaxy brightens my night.

I'm curious as to who made changes but I'm also satisfied to see someone having interest in my repositories. I know that job is complete.


Update colors to match AA standards, consolidate/remove unused styles

Description:
This commit:

Updates the color variables to meet WCAG 2.0 AA color accessibility standards.
Consolidates color variables that are very similar to each other after the change.
Removes unused color variables from the codebase.
Removes unused background image.
Updates tests accordingly.

Linked issues:
https://trello.com/c/fJOPzesP/75-as-a-user-in-minnesota-with-accessibility-needs-i-want-to-ensure-that-all-color-contrasts-in-the-app-meet-wcag-20-aa-standards
Screenshots:

How to test:

Run the app locally.
Ensure the UI matches the attached screenshots.
Review the full UI to ensure that all colors and gradients are rendering properly and readable.

🚢 :shipit:
I ran the build and colors look great to me but maybe I lack the context to validate that the correct ones are on the correct places if someone else wants to take a peek.

The changes are very slight, so I think as long you didn't observe any breaking changes I feel comfortable shipping it - this can be reviewed in more detail during acceptance testing.


Windows.UI.ViewManagement.UISettings.ColorValueChanged does not trigger in WinUI3 app on Windows 10

Describe the bug
Windows.UI.ViewManagement.UISettings.ColorValueChanged does not trigger when changing dark/light mode in system settings with WinUI3 (packaged) app under windows 10.
UWP app does not have such issue.
This issue ONLY seems to happen on Windows 10. I tried on both 17763 and 19045 and both are having issues (and both are working properly with UWP app, which is kind of funny). On Windows 11 22621, no issues.
Steps to reproduce the bug

Create a new C++ WinUI3 app (packaged)
In MainWindow.xaml.h, add a member

struct MainWindow : MainWindowT<MainWindow>
{
    ...
    winrt::Windows::UI::ViewManagement::UISettings settings;
};

In MainWIndow.xaml.cpp

    MainWindow::MainWindow()
    {
        settings.ColorValuesChanged([](auto...)
            {
                OutputDebugString(L"Triggered");
            });
    }

Put a breakpoint on the OutputDebugString line, build and run. Toggle dark/light mode in system settings, the breakpoint is NOT hit.

Expected behavior
No response
Screenshots
WinUI3 (left) <--------------------> UWP (right)
https://github.com/microsoft/WindowsAppSDK/assets/42881734/2589383b-fa92-44ca-a608-3ed7d9fec6db
NuGet package version
Windows App SDK 1.4.3: 1.4.231115000
Packaging type
Packaged (MSIX)
Windows version
Windows 10 version 22H2 (19045, 2022 Update), Windows 10 version 1809 (17763, October 2018 Update)
IDE
Visual Studio 2022
Additional context
No response

I think the issue with ColorValueChanged is that there is documentation stating that it isn't supported. It could be that it wasn't working in Windows 10, but has since been made to work in 11.

First, remember that "not supported" is not the same as "doesn't work". It normally means that Microsoft doesn't intend for it to work, but if it works then it is good for you. However, if it doesn't work then they will not support you.
Secondly, is the WPF application packaged?

First, remember that "not supported" is not the same as "doesn't work". It normally means that Microsoft doesn't intend for it to work, but if it works then it is good for you. However, if it doesn't work then they will not support you.
Secondly, is the WPF application packaged?
I use whatever project template visual studio comes with, so the WPF application is not packaged. At this point, I think Microsoft should just update the documentation, what works under which framework, packaged/unpackaged, and what was quitely made to work with Windows 11.


envoy/network/socket.h socket options don't always work on Windows

I found this while debugging a test on cluster_manager_impl_test.cc.  In particular, when creating a SocketOption that isn't supported on Windows: https://github.com/envoyproxy/envoy/blob/01ae32ba5c6aec8ab810549f804c2dc67061fe81/test/common/upstream/cluster_manager_impl_test.cc#L4291
When that code runs on Windows CI, you don't get an error saying the option isn't available on Windows, instead if the given socket option isn't available, an empty SocketOptionsImpl is created instead: https://github.com/envoyproxy/envoy/blob/7db0b4a299730e9c4dd4872788bd56cc7b11018a/envoy/network/socket.h#L47-L51
This means that the socket options which are hashed to form a key for finding the right connection pool end up hashing to the same value, causing the test to fail.  I fixed the test by using socket options that are available on Windows too.
But the concern is that b/c it silently "fails" by creating an empty SocketOptionsImpl, we won't know that the option wasn't applied on the given platform and won't know that we should instead be using a different socket option for that platform.
It seems like envoy/network/socket.h mainly covers Linux/Unix socket options but not the various Windows ones.  This might be something that the Windows maintainers are interested in tackling for the Windows platform.

CC @grantbarry29


More tweaks to fetching Ona form submissions

A more specific error message when a response is empty.
Don't fetch the same form's definition repeatedly.

:rocket:


did this ever even work?

interested to know if this project ever worked for anyone else

It definitely worked at one point. I used this technique in a few production apps.
That said it's quite out of date now, so if you just walk through the steps in the tutorial I would not be surprised if some update to an upstream dependency breaks this tutorial. I have no intention of keeping things up to date.
@gbochenek just used this technique in a wab-test-example, so the technique works. Maybe start there if you were trying to get this working.


Including Search Item In Documents Breaks Compilation of Web UI

We started using Slate for documentation recently. We love it!
However this morning I found something quite strange.
This is my index.html.md:
---
title: HealthCare-USA API Reference

language_tabs:
  - JSON

toc_footers:
  - Documentation Powered by Slate

includes:
  - api/index
  - api/search
  - api/service_create
  - api/service_destroy
  - api/service_index
  - api/service_update
  - api/service_show
  - model/index
  - model/user
  - model/profile

search: true
---

This is the file tree I have:
source/includes/api
├── _auth.md
├── _example.md
├── _index.md
├── _search.md
├── _service_index.md
├── _service_show.md
├── _service_destroy.md
├── _service_update.md
├── _sign_up.md
└── _profile.md

If I do this, nothing except example and search show up.
However, if I simply run:
mv source/includes/api/_search.md source/includes/api/_tearch.md
And change search to tearch in index.html.md and now everything displays fine.
I dont have time to truly dig into it right now but could investigate this weekend if you have an idea of where to start looking in the code to track this down.

Hmm, are you still having this problem? I just created includes/_search.md, and added it to my index.md, and wasn't having any problems.

I will try to replicate again later today and include a repo with it showing if I succeed @lord

:+1:

I cherry-picked the state from the commit in which this had initially happened for me after verifying it was in fact doing this still in my repository. Then I pulled from master, and it had been quite a while since initially cloning, and upon getting the latest changes it was no longer displaying the issue.
Weird, but woo, now I dont have to hack-patch it by naming the file _tearch.md :)
Thanks!
:+1: closing

Glad it's fixed! Thanks for following up.