Error when generate image from Replicate (url vs base64) in output

Hi,
I started get an error in production now:
DEBUG 2024-10-23 17:31:49,556 _trace receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Wed, 23 Oct 2024 17:31:49 GMT'), (b'Content-Type', b'application/json'), (b'Transfer-Encoding', b'chunked'), (b'Connection', b'keep-alive'), (b'CF-Ray', b'8d7376805b37df41-GIG'), (b'CF-Cache-Status', b'DYNAMIC'), (b'Allow', b'GET, DELETE, HEAD, OPTIONS'), (b'Strict-Transport-Security', b'max-age=15552000'), (b'Vary', b'Cookie, origin, accept-encoding'), (b'alt-svc', b'h3=":443"; ma=86400'), (b'content-security-policy-report-only', b"default-src 'self'; font-src 'report-sample' 'self' data: https://d31rfu1d3w8e4q.cloudfront.net; img-src 'report-sample' 'self' data: https://replicate.delivery https://*.replicate.delivery https://*.githubusercontent.com https://github.com https://d31rfu1d3w8e4q.cloudfront.net; style-src 'report-sample' 'self' 'unsafe-inline' https://d31rfu1d3w8e4q.cloudfront.net; media-src 'report-sample' 'self' https://replicate.delivery https://*.replicate.delivery https://*.sentry.io https://d31rfu1d3w8e4q.cloudfront.net; connect-src 'report-sample' 'self' https://stream.replicate.com https://replicate.delivery https://*.replicate.delivery https://*.rudderlabs.com https://*.rudderstack.com https://*.sentry.io https://api.markprompt.com; frame-src 'self' https://replicatestatus.com; script-src 'report-sample' 'self' https://cdn.rudderlabs.com/v1.1/rudder-analytics.min.js https://d31rfu1d3w8e4q.cloudfront.net; worker-src 'none'; report-uri"), (b'cross-origin-opener-policy', b'same-origin'), (b'nel', b'{"success_fraction":0,"report_to":"cf-nel","max_age":604800}'), (b'ratelimit-remaining', b'2999'), (b'ratelimit-reset', b'1'), (b'referrer-policy', b'same-origin'), (b'report-to', b'{"endpoints":[{"url":"https:\\/\\/a.nel.cloudflare.com\\/report\\/v4?s=djHaWx58xHOFzaTn1YPs1Yyf5evWab0sPKuAckMmESPCVh7SGtjAUlXiQEdWXAyV9EOK78A3HKBKiWpYL9WeK3Oyo15c8WOmPlUt8RHWatz63%2FNxdTErNBFz7TawdkTTu2N%2BCEzw%2BHMkxiXbKHK9hrRE5bc%3D"}],"group":"cf-nel","max_age":604800}'), (b'x-content-type-options', b'nosniff'), (b'x-frame-options', b'DENY'), (b'Server', b'cloudflare'), (b'Content-Encoding', b'gzip')])
INFO 2024-10-23 17:31:49,558 _client HTTP Request: GET https://api.replicate.com/v1/models/MY_USER/flux-1893964e-54d9-4b90-8eff-afb71134ef8f/versions/40c980883712c68a63544c5c5141402e7d756c264ffe8f25b28984d9d1f915b5 "HTTP/1.1 200 OK"
DEBUG 2024-10-23 17:31:49,558 _trace receive_response_body.started request=<Request [b'GET']>
DEBUG 2024-10-23 17:31:49,560 _trace receive_response_body.complete
DEBUG 2024-10-23 17:31:49,560 _trace response_closed.started
DEBUG 2024-10-23 17:31:49,560 _trace response_closed.complete
ERROR 2024-10-23 17:31:49,577 flux Unexpected error: No connection adapters were found for 'data:application/octet-stream;base64,UklGRsQGAwBXR[...base 64 data...]

Lib: replicate==1.0.2
My code:
output = replicate.run(model_path, input=replicate_input)

# download and save the generated image
for output_item in output:
    url = output_item.url
    file_name = os.path.basename(urlparse(url).path)

    # extract the extension and generate a unique uuid name
    extension = os.path.splitext(file_name)[1]
    unique_file_name = f"{uuid.uuid4()}{extension}"

    response = requests.get(url, stream=True)

    if response.status_code == 200:
        file_content = ContentFile(response.content)

Can you help me?
Output data maybe is returning in base64 instead of the URL.
Thanks.

I am getting the same error too. Replicate team, please help resolve this issue.

cc @mattt Can you please have a look at this? Our infer APIs have stopped working.

they abandoned it, things stop working, the api response changes suddenly, there is no support, a huge mess

cc @nickstenning Please check this

@paulocoutinhox @eloelo-techadmin we've made some changes in 1.0.0 that smooths out the flow for working with file outputs. By default the run() method in 1.0.0 will return a FileOutput which is a file-like object.
See the release notes for more details: https://github.com/replicate/replicate-python/releases/tag/1.0.0
This means your example code no longer needs to use requests to fetch the URL and can be written as:
output = replicate.run(model_path, input=replicate_input)

# download and save the generated image
for output_item in output:
    # TODO: replicate needs to provide a way to get the filename/filetype of the model
    extension = ".png"
    unique_file_name = f"{uuid.uuid4()}{extension}"

    file_content = ContentFile(output.read())

You can disable this behavior and revert to the model output by passing use_file_output=False to the run() method.
output = replicate.run(model_path, input=replicate_input, use_file_output=False)

Regarding the API interface, it now has two modes, sync, and async. The former will hold the connection open and deliver the prediction in the same request, for smaller files we inline the file as base64 data in order to reduce latency even further.
https://replicate.com/docs/topics/predictions/create-a-prediction
The client libraries now use this new interface by default controlled by the wait argument, you can opt out and use the polling interface by passing wait=False to get the pre-1.0.0 behavior.
output = replicate.run(model_path, input=replicate_input, wait=False, use_file_output=False)

We are working on updating the documentation to make this clearer.

Had to ship a hotfix as well few minutes ago:

    def base64_to_pil(base64_str: str):
        # Remove data URL prefix if present (e.g., 'data:image/jpeg;base64,')
        if "base64," in base64_str:
            base64_str = base64_str.split("base64,")[1]

        try:
            # Decode base64 string
            image_data = base64.b64decode(base64_str)

            # Create a byte stream
            image_stream = io.BytesIO(image_data)

            # Open the image using PIL
            image = Image.open(image_stream)

            # Load the image data (this ensures the file is valid)
            image.load()

            return image

        except Exception as e:
            raise IOError(f"Could not decode image data: {str(e)}")

I think they accidentally fucked up big time.

I just wanted to raise that with the same version of the client my production environment broke today - I did not update anything.
This means that something else changed upstream, and I am sorry to tell you that this is very bad practice. I suggest you to revert the changes on your backends, to prevent a lot of deployed apps to stop working and potentially loose a lot of customers.

I just wanted to raise that with the same version of the client my production environment broke today - I did not update anything.

If this is true it's absolutely not intended. Please share details of which client version you are using.

I am using version 1.0.1 - Pinned by my Poetry lock file.
We did not make any change in production for the past couple of days, and up until yesterday everythin was running smoothly, meaning that result.url was an actual URL. Now, all of a sudden, the upstream API started returning base64 encoded data. We spotted this thanks to Sentry earlier today. I really have no clue what's going on, but I suggest to please double check this too.

Since 1.0.0, this client library has been running in wait mode by default (by passing Prefer: wait in the API request it makes). However, we hadn't rolled out support for that behaviour to all models. We finished that roll out yesterday, so Prefer: wait, which was previously ignored for your model, is now being respected, resulting in a change in the output. Please see the release notes for 1.0.0 for more information on how to handle this change.

What @erbridge is correct, but what this does mean is that our API didn't change behaviour for most clients. Unfortunately, replicate.run has been sending a header that does change the behaviour of the API since 1.0.0, and you've been bitten by us -- quite clearly -- sequencing this process incorrectly.
I'm really sorry we broke stuff for you. We'll be figuring out how to do this better in future.

I see what you are saying folks, and apologies for assuming you did something wrong.
I somehow completely missed this change as when I started experimenting with 1.0.1 everything was working fine on my end and I assumed it would not change until 2.x.x.
Sorry ! <3

And to be clear: your assumptions were and are totally reasonable. We didn't think through what it would mean to ship a breaking in change in 1.x that was only activated later. This one is entirely on us.

We've rolled back the behaviour of data URLs which caused this, and have written up the incident on our blog: https://replicate.com/blog/data-urls-in-our-sync-api
We messed up this rollout, and we know this has to be better for a company that's all about APIs, and we're sorry for falling short here.

All good, and kudos for owning up to this! Let's face it - we're human beings, not LLMs (yet). Making mistakes and learning from them is just part of the package deal of being human. No way I'd jump ship to another provider - the Replicate crew is top-notch!
P.S. So... about those free credits... 👀 (kidding! 😂)


Initial CPAOT support for large version bubble

This change modifies the existing --inputbubble CPAOT option
to work the same as Crossgen /largeversionbubble i.e. the main module
and all reference assemblies are considered to belong to the same
version bubble.
The gist of the change deals with encoding module overrides in
signatures. I have implemented a new R2R header table
ManifestMetadataTableNode and added logic for composing and emitting
the extra AssemblyRef list.
One challenging bit was that we need to emit all the signatures before
emitting the ManifestMetadataTableNode because only the emission
of the signatures shakes out all the required AssemblyRef's. I have
added a simple loop to ImportSectionsTableNode / ImportSectionNode
that traverses and emits all registered import cell signatures.
After I managed to make the basic signature emission work with module
override, I continued hitting issues with the two entrypoint tables.
For the (non-generic) method entrypoint table we need to filter out
methods outside of the current input module because the larger
compilation group representing the larger version bubble ends up
expanding the dependency graph to framework methods.
While these "external" methods are not compiled into the output
executable (except when they are occasionally inlined into a local
method), we were still trying to emit them into the entrypoint
table and we were crashing compilation because we couldn't find
some of the necessary tokens.
For instance entrypoints, I didn't find any manner of encoding
a module override for their signatures in the native hashtable so
for now I added filtering that we're only storing those instance
entrypoints that have the current input module as the reference
module. One can theoretically imagine that a module may contain
arbitrary generic instantiations spanning other modules when
larger bubbles are on.
While working on the change I also realized that the current way
of basing signature contexts on input modules in CorInfoImpl.ReadyToRun
was incorrect - when a method gets inlined, we still need the original
signature context because that's what defines the ambient module
used in the CoreCLR signature parser.
I have deleted the field and instead I added a new method
GetSignatureContext which currently returns
ReadyToRunCoregenNodeFactory.InputModuleContext. Once we start
implementing "single-file" (i.e. compiling multiple MSIL modules
into a single PE), we'll change this to something more fine-grained,
most likely based on some lookup on MethodBeingCompiled.
Thanks
Tomas

It's also probably worth noting that right now the change is not completely correct w.r.t. nested generic type arguments. As JanV pointed out in his status e-mail, CoreCLR resets the signature context to the top-level context (corresponding to the module containing the function being compiled) upon recursive descent into nested generics. For now I'm ignoring this as the problem is rare and JanV is currently working on design how to fix this cleanly in the CoreCLR runtime and in Crossgen. It simply doesn't make sense to try to exactly match the existing functionality as it's likely to change soon.


Change RekeyUI refresh protocol

Instead of sending KIDs to RekeyUI clients, send Devices.
Updated problemSet in tests to use t_frank, t_george UIDs, KIDs.
r? @maxtaco
cc: @chrisnojima
Note that this doesn't close 3100, but @chrisnojima said updated protocol would be useful.

@maxtaco @chrisnojima PTAL

All good! Thanks!


Sample django project

Added Django sample project for app demo

Codecov Report

Merging #3 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master       #3   +/-   ##
=======================================
  Coverage   22.22%   22.22%
=======================================
  Files           7        7
  Lines         135      135
=======================================
  Hits           30       30
  Misses        105      105

Continue to review full report at Codecov.

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


changed no dp default.img, let height: auto else image stretch

New PR for #1181

Coverage remained the same at 84.279% when pulling c98a1dbe8ddd57f4f45f608b81cb1ac197fe35c1 on abstrekt:no-dp into a9a0b072ace01117f676af8f9ada5ddf3842e1e3 on CircuitVerse:master.

@nitin10s

Please attach screenshots here as well.

Please attach screenshots here as well.

done.

this would cause no problem, the purpose of this PR is that the default no dp image was pixelated, & looked bad, this no dp is actually square, looks circular because of transparent edges, if the css on #1208 is set right, this should look the same merging both the PRs, maybe a conflict may arise, which can be fixed.

In short, this PR changes the default image when no dp is set, #1208 changes the DP shape to be circular @nitin10s

screenshot of old default.jpg

@nitin10s  it just changes:

to:

We cannot set the image height to auto, the user can upload big size images which will try to take up complete space for its dimensions then.

No there is a width mention somewhere @aayush-05

Imagine a user uploads an image of 300*150 dimensions

Imagine a user uploads an image of 300*150 dimensions

I made a rollback,  #1208 was addressing aspect ratio, this PR is intended only for the binary files.

@abstrekt can you add the code alongwith, just a little condition to use these binary files in case of no profile picture

@abstrekt can you add the code alongwith, just a little condition to use these binary files in case of no profile picture

it is already there, since before!

Ah, got it. My bad!

@aayush-05


IIS 10 deploy Rdotnet Issue

Hi All,
I am facing deployment issues in IIS 10
Error in library(RODBC) : there is no package called 'RODBC' same with other packages also.
Tried changing path also but nothing works for me
But in VS2015 its working fine
Thanks

@skyguy94 can you help me to solve this issue because i tried all possible ways but no luck

I would verify that the R you are using is the same (check for 32 bit/ 64 bit conflicts), also evaluate the returned values from R.home() as well as the .libPaths()  in both VS2011 and IS10 to check for differences.

Yes i tried all ways but no luck tried changing environment variable path accordingly but nothing works

@manjotsingh20 This is the very common R.Net Library load issue when running from IIS.
Please follow the instructions in this issue (https://rdotnet.codeplex.com/workitem/117).

@skyguy94 I tried adding C:\Program Files\R\R-3.2.3\bin\i386 and for 64 bit, another way also that's mentioned in that url also but no luck

Did you try the sample mentioned in that work item, ie: print(summary((1:5))? Does that work?
If that doesn't work for you, I don't know what to tell you without some unguided troubleshooting on your end. The PATH issue is a well documented and well understood compatibility problem between IIS and R.

okay will troubleshoot this..


[Request] Solar Guards in Spectre Library

Hi, I do not see Solar Guards in the Spectre Library?
Is there a reason for this?

Duplicates #492.


Powerful Improve: parallel scan exec instance

Currently, we always allocate one scan instance exec node for one fragment in one BE, even if there are a lot of tablets and the cluster resource is abundant.
So, I think we could parallel scan exec instance ，take full advantage of cluster resource and speed the query.
Specifically speaking，we could introduce a new config parallel_scan_exec_instance_num.
If the parallel_scan_exec_instance_num is 10 and there are 100 tablets one fragment in one BE, we could allocate 100 / 10 = 10 scan instance exec node for one fragment in one BE.
The following is the test result for this improve:
All SQL are from our prod env
The config parallel_scan_exec_instance_num is 5.
I test the following SQL use same BE cluster and different FE(whether has this improve)
SQL 1:
select count(*), datekey from table group by datekey order by datekey;

SQL 2:
SELECT  sum(account_dr) AS account_dr, SUM(account_cr) AS account_cr
FROM table
WHERE  deliver_date >= '2019-03-01' AND deliver_date <= '2019-03-30';

SQL 3:
select count(*) from (
select crawl_time_hour0, room_status_result, row_number()
   over(partition by crawl_time_hour0, mt_room_id, mt_breakfast order by mt_room_status asc, comp_room_status asc) rn
from table
where  datekey <= 20190327 and  datekey >= 20190325 and crawl_time_hour0 >= 11230 and crawl_time_hour0 <= 12000) t;

SQL 4:
select count(*)
FROM  t1
INNER JOIN [shuffle] t5
   ON ((t1.dt = t5.dt) AND (t1.wm_poi_id = t5.wm_poi_id))
INNER JOIN [shuffle]  t6
   ON ((t1.dt = t6.dt) AND (t1.wm_poi_id = t6.wm_poi_id))
where t1.dt <= 20190327 and t1.dt >= 20190201;

SQL 5:
select count(*) from (
select crawl_time_hour0, room_status_result, row_number()
   over(partition by crawl_time_hour0, mt_room_id, mt_breakfast order by mt_room_status asc, comp_room_status asc) rn
from table
where  datekey <= 20190328 and  datekey >= 20190320) t;

The following picture illustrate the test result:

@kangkaisen
Wonderful job!!!
It is very useful for single query's performance. However this is bad for broadcast join, because inner table will be sent more times, and more memory would be taken. So  I think adding a new config to limit max instances is acceptable.
And now Doris's query optimizer can't decide when to use broadcast join or shuffle join, we should improve our optimizer. And our optimizer should decide how many scan instances should be allocated according to its data size. Then we can drop this config item.
Looking forward to your PR

@imay Thanks for your reminder.  I will not parallel scan exec instance for  broadcast join inner table and small size table.
As for the  max instances limit，I want to do this initially, but I don't find a good way to do this.
If we want to limit the max instances for All BE, different cluster has different BE number，but we don't have cluster level config and only one server level config couldn't do this limit well.
If we want to limit the max instances for one BE, I think we could indirectly do this by parallel_scan_exec_instance_num config.

Now we have support parallel execution for query without join, you can set mt_dop to decide start how many threads for one fragment in one host, so i think you need't support this config and i will support parallel join by partiton join later, and your SQL does't contain GroupBy all,  if you query contains Groupby , the computing power of AggregateNode will be matched with the computing power of ScanNode.  I wonder if I understand all your ideas.

If we want to limit the max instances for one BE, I think we could indirectly do this by parallel_scan_exec_instance_num config.

I think that parallel_scan_exec_instance_num default value should be 1 to make no influence when upgrading cluster.

If we want to limit the max instances for one BE, I think we could indirectly do this by parallel_scan_exec_instance_num config.

I think that parallel_scan_exec_instance_num default value should be 1 to make no influence when upgrading cluster.

Yes, I agree with you. set 1 or 0 should both be Ok.


Sockets timed out request - retry on reconnection [feat?]

Hi,
I believe. I have an issue that came as a result of #9. When my server disconnects and reboots, during the down time all my calls to it get errors in their promises "Timed out" which is expected. But when socket reconnects the events are sent (which is a nice feature).
So summarizing --> I get error in promise but the request was successful.
Do you have any approach for sending a command-like event and knowing it was 'eventually' successful?
Currently for me the promise return of the services calls is too unreliable as depending if it could connect or not, it could throw but that doesn't mean it 'finished' trying.
But after promise has 'thrown' there is no way of knowing if it successfully retried not falling back to handling it by hand.
Suggestion:

Maybe there could be a possibility to pass 'subscribtion' to the ACK message of the command, as an additional information either inside exception or as a 'option' to service call.

This would allow for a scenario that if we know that our server is correct and it will eventually reconnect we could then show messages like:
'failed to send, due to timeout, will try again on reconnection'
Steps to reproduce

restart feathers service while site was connected to it.

On given site/web app execute something like:

app.service('anyService').create({})
.then((data)=> alert('ok'))
.catch(error => alert(error))

If site didn't get response in due time it throwed an exception TIMEOUT
On reconnection in network view you can see that the message was sent and object was created.

(OPTIONAL)
5. If you were subscribed to 'created' event you got new object - but alert about fail was already shown
In my case I have already showed user that his command failed, as I have no reliable way of knowing if it ever finished successfully. But then display new object when it arrives - quite confusing.

I'm not sure if resend on reconnect is supported by all websocket libraries or what to look for if it is trying to reconnect. Another problem is that I don't think there is another way but timeouts to figure out if you are trying to call a method that doesn't exist.
A fix that probably should be done here is to not execute the client callback if it has already timed out. In your case you can then set the default timeout to something larger than what it takes the server to reboot.

Actually nevermind, the promise only gets rejected or resolved once and getting the real-time event is expected (since it could've come from somewhere else). I'm not sure if we can do much else here.
The closes we can get get is probably https://github.com/feathersjs/feathers/issues/421 which will let us throw errors if we are subscribing to unknown services or methods (so you can set the timeout much higher since it won't be the only way to know if it is an unknown service or method). I'll close this as a duplicate of the linked issue.


Documentation updates, mainly for Python API

Motivation
Documentation improvements
Modifications

functions-debug: show where function stderr logs are written
functions-develop: note that pulsar only starts "python", you may need a frig to use "python3" (#5518)
functions-overview: give example of deploying python function with --py and --classname
functions-state: document Python state API (currently says it's not implemented)
functions-api, functions-state: add deleteState to Java API

Note: functions-state and functions-api are currently unlinked from the navbar.  Need to decide what to do about these - e.g. move valuable parts into "functions-develop" and then "git rm" them.

We've adopted the new structure for Pulsar Functions in #4554. It's not complete at the moment.

Do you think I should wait until the structure is finalized before reworking this patch?

We've adopted the new structure for Pulsar Functions in #4554. It's not complete at the moment.

Do you think I should wait until the structure is finalized before reworking this patch?

You do not need to wait, just go ahead with your patch.

I have force-pushed new version; this also removes functions-api.md and functions-state.md

Never mind, I will open new PR


Please move to npm

Cordova has moved plugins to npm.
Please follow this guide to move your plugin to npm: http://cordova.apache.org/announcements/2015/04/21/plugins-release-and-move-to-npm.html

https://github.com/stevengill/cordova-registry-mapper/pull/23


/bin/bash: line 97: ./vendor/phpunit/phpunit/phpunit: No such file or directory

Today I get this error on mi pipelines in stage testing
Downloading artifacts from coordinator... ok        id=1173 responseStatus=200 OK token=EshE9PoL
$ php -v
PHP 7.3.9 (cli) (built: Sep  3 2019 05:30:13) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.9, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.3.9, Copyright (c) 1999-2018, by Zend Technologies
    with Xdebug v2.8.0beta2, Copyright (c) 2002-2019, by Derick Rethans
$ sudo cp /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini /usr/local/etc/php/conf.d/docker-php-ext-xdebug.bak
$ echo "" | sudo tee /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini

$ ./vendor/phpunit/phpunit/phpunit --version
/bin/bash: line 97: ./vendor/phpunit/phpunit/phpunit: No such file or directory

I've tried with:

image: edbizarro/gitlab-ci-pipeline-php:7.3-alpine
image: edbizarro/gitlab-ci-pipeline-php:7.3
image: edbizarro/gitlab-ci-pipeline-php:7.2

Yesterday Dock runners work perfectly.
.gitlab-ci,.yaml
stages:
  - preparation
  - building
  - testing
  - security

variables:
  MYSQL_ROOT_PASSWORD: root
  MYSQL_USER: albarid_ci
  MYSQL_PASSWORD: albarid_secret
  MYSQL_DATABASE: albarid_ci
  DB_HOST: mysql

cache:
  key: $CI_BUILD_REF_NAME

composer:
  stage: preparation
  services:
    - {name: 'abkrim/mysql8_legacy_password:latest', alias: 'mysql'}
#    - mysql:latest
  image: edbizarro/gitlab-ci-pipeline-php:7.2
  script:
    - php -v
    - echo "{\"http-basic\":{\"nova.laravel.com\":{\"username\":\"${NOVA_USERNAME}\",\"password\":\"${NOVA_PASSWORD}\"}}}" > ~/.composer/auth.json
    - composer install --prefer-dist --no-ansi --no-interaction --no-progress --no-scripts
    - cp .env.example .env
    - php artisan key:generate
  artifacts:
    paths:
      - vendor/
      - .env
    expire_in: 5 days
    when: always
  cache:
    paths:
      - vendor/

yarn:
  stage: preparation
  image: edbizarro/gitlab-ci-pipeline-php:7.2
  script:
    - yarn --version
    - yarn install --pure-lockfile
  artifacts:
    paths:
      - node_modules/
    expire_in: 1 days
    when: always
  cache:
    paths:
      - node_modules/

build-assets:
  stage: building
  image: edbizarro/gitlab-ci-pipeline-php:7.2
  dependencies:
    - composer
    - yarn
  script:
    - yarn --version
    - yarn run production --progress false
  artifacts:
    paths:
      - public/css/
      - public/js/
      - public/fonts/
      - public/mix-manifest.json
    expire_in: 1 days
    when: always

db-seeding:
  stage: building
  services:
    - {name: 'abkrim/mysql8_legacy_password:latest', alias: 'mysql'}
#    - mysql:latest
  image: edbizarro/gitlab-ci-pipeline-php:7.2
  dependencies:
    - composer
    - yarn
  script:
    - php artisan migrate:fresh --seed
  artifacts:
    paths:
      - ./storage/logs # for debugging
    expire_in: 1 days
    when: on_failure

phpunit:
  stage: testing
  services:
    - {name: 'abkrim/mysql8_legacy_password:latest', alias: 'mysql'}
#    - mysql:latest
  image: edbizarro/gitlab-ci-pipeline-php:7.2
  dependencies:
    - build-assets
    - composer
    - db-seeding
  script:
    - php -v
    - sudo cp /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini /usr/local/etc/php/conf.d/docker-php-ext-xdebug.bak
    - echo "" | sudo tee /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
    - find . -type f -name phpunit
    - ./vendor/phpunit/phpunit/phpunit --version
    - php -d short_open_tag=off ./vendor/phpunit/phpunit/phpunit -v --colors=never --stderr
    - sudo cp /usr/local/etc/php/conf.d/docker-php-ext-xdebug.bak /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
  artifacts:
    paths:
      - ./storage/logs # for debugging
    expire_in: 1 days
    when: on_failure

codestyle:
  stage: testing
  image: lorisleiva/laravel-docker:latest
  script:
    - phpcs --standard=PSR2 --extensions=php app
  dependencies: []

phpcpd:
  stage: testing
  image: edbizarro/gitlab-ci-pipeline-php:7.2
  script:
    - test -f phpcpd.phar || curl -L https://phar.phpunit.de/phpcpd.phar -o phpcpd.phar
    - php phpcpd.phar app/ --min-lines=50
  dependencies: []
  cache:
    paths:
      - phpcpd.phar

sensiolabs:
  stage: security
  image: edbizarro/gitlab-ci-pipeline-php:7.2
  script:
    - test -d security-checker || git clone https://github.com/sensiolabs/security-checker.git
    - cd security-checker
    - composer install
    - php security-checker security:check ../composer.lock
  dependencies: []
  cache:
    paths:
      - security-checker/

Also tried purge all docker system and images
All tiemes same issue

hi @abkrim
Weird, I have no errors in my builds/tests today with a similar pipeline, it seems to me that the dependencies (composer task) are not properly downloaded.
Have you tried to run ./vendor/phpunit/phpunit/phpunit --version on the composer task to check if everything is corrected installed?

Hi.
Just trying to run the tests locally for some reason, I had erased the dependence of phpunit on the composer.json in my two projects.
I close and apologize


[popViewControllerAnimated:] never sent to UINavigationController on navigation bar "<-" (back) button engagement

When a top (modeless) view controller is popped from the navigation stack through the navigation bar "<-" (back) button, the [popViewControllerAnimated:] method should be invoked on its UINavigationController. In WinObjC the message is never sent.
On the other hand, calling [self.navigationController popViewControllerAnimated:YES]; from inside a top (modeless) view controller, instead of engaging the navigation bar "<-" (back) button, properly invokes [popViewControllerAnimated:] on a UINavigationController subclass.
Subclassing UINavigationController and overriding [popViewControllerAnimated:] is a common way to detect the "<-" (back) button engagement (especially so when [isMovingFromParentViewController] and [didMoveToParentViewController:] are not yet implemented in WinObjC).
As of: WinObjC version 0.2.160927 (September 27, 2016).

On a related note, WUCSystemNavigationManager does not seem to work, either:
#import "Platform\Universal Windows\UWP\WindowsUIXamlControls.h"

- (void)viewDidLoad
{
	[super viewDidLoad];

	WUCSystemNavigationManager* manager = [WUCSystemNavigationManager getForCurrentView];

	/*
	// fails, even though the navigation bar "<-" (back) button is visible and clickable
	assert(manager.appViewBackButtonVisibility == WUCAppViewBackButtonVisibilityVisible);
	*/

	EventRegistrationToken token = [manager addBackRequestedEvent:
		^(RTObject*, WUCBackRequestedEventArgs*)
		{
			// never called back
		}
	];

	// later // [manager removeBackRequestedEvent:token];
}

On a second related note, the WXCFrame approach does not seem to be applicable, either:
protected override void OnLaunched(LaunchActivatedEventArgs e)
{
    Frame rootFrame = Window.Current.Content as Frame;

	// ...
}

- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions
{
	// ...

	[self.window makeKeyAndVisible];

	// fails
	assert([[WXWindow current].content isKindOfClass:[WXCFrame class]]);

	WXCFrame* rootFrame = (WXCFrame*) [WXWindow current].content;

	EventRegistrationToken token = [rootFrame addNavigatedEvent:
		^(RTObject*, WUXNNavigationEventArgs*)
		{
		}
	];

	// later // [manager removeBackRequestedEvent:token];
}


Make IsBlank matcher consistent with String.isBlank

Fixes https://github.com/hamcrest/JavaHamcrest/issues/325

Well...from Travis I learned that Hamcrest still supports Java7, hence why isBlank is not being used. Need to consider a different approach.

@peterdemaeyer looks like the builds have passed again, and the whitespace changes have been made :)


setting artifactory_group.user_names to [] produces correct plan but doesn't take effect

Community Note

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

Terraform Version
Terraform v0.13.7

provider registry.terraform.io/hashicorp/aws v3.63.0
provider registry.terraform.io/jfrog/artifactory v2.6.12

Affected Resource(s)
artifactory_group
Terraform Configuration Files

resource "artifactory_group" "power_users" {
  name      = "power-users"
  users_names = []
}

Expected Behavior
Users will be removed from the group
Actual Behavior
Plan is correct:
Terraform will perform the following actions:

  # artifactory_group.platform_team will be updated in-place
  ~ resource "artifactory_group" "power_users" {
        admin_privileges = false
        auto_join        = false
        id               = "power-users"
        name             = "power-users"
        realm            = "internal"
      ~ users_names      = [
          - "user1",
        ]
    }

But users are not removed after terraform apply
Steps to Reproduce

create a group with terraform
add users via the UI
update terraform to   users_names = []
terraform apply

Important Factoids

References

#0000

Hi @antonmos,
This repo is deprecated in favour of github.com/jfrog/terraform-provider-artifactory. If you're having issues, your best bet is to post there

thank you! opened https://github.com/jfrog/terraform-provider-artifactory/issues/253


Patch/releasenotes 062

These are the preliminary release-notes, they still need to be finished according to the commit history for release-0.6.2 (which contains cherry-picked commits from master branch).
https://github.com/keptn/keptn/commits/release-0.6.2
compared to 0.6.1:
https://github.com/keptn/keptn/commits/release-0.6.1

Codecov Report

Merging #1664 into release-0.6.2 will decrease coverage by 0.24%.
The diff coverage is n/a.

@@                Coverage Diff                @@
##           release-0.6.2    #1664      +/-   ##
=================================================
- Coverage          26.47%   26.22%   -0.25%
=================================================
  Files                 72       72
  Lines               4537     4537
=================================================
- Hits                1201     1190      -11
- Misses              3168     3177       +9
- Partials             168      170       +2

Impacted Files
Coverage Δ

cli/cmd/configure_domain.go
15.65% <0.00%> (-4.35%)
:arrow_down:

distributor/cmd/main.go
57.77% <0.00%> (-1.12%)
:arrow_down:

Continue to review full report at Codecov.

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


wikiann dataset is missing columns

Hi
Wikiann dataset needs to have "spans" columns, which is necessary to be able to use this dataset, but this column is missing from huggingface datasets, could you please have a look? thank you @lhoestq

Here please find TFDS format of this dataset: https://www.tensorflow.org/datasets/catalog/wikiann
where there is a span column, this is really necessary to be able to use the data, and I appreciate your help @lhoestq

Hi !
Apparently you can get the spans from the NER tags using this function:
https://github.com/tensorflow/datasets/commit/c7096bd38e86ed240b8b2c11ecab9893715a7d55#diff-27548612e7590a96394382b4edeccaa1563968da4aedf1bb5ba37ac4f5501bd2R81-R126
It would be nice to include the spans field in this dataset as in TFDS. This could be a good first issue for new contributors !

Hi @lhoestq
thank you very much for the help, it would be very nice to have it included, I am not sure how to contribute to the repository and how things work, here is the full code, one need to also convert tags to string first:
import datasets
from datasets import load_dataset

def tags_to_spans(tags):
  """Convert tags to spans."""
  spans = set()
  span_start = 0
  span_end = 0
  active_conll_tag = None
  for index, string_tag in enumerate(tags):
    # Actual BIO tag.
    print("@@@@ string tag ", string_tag)
    bio_tag = string_tag[0]
    assert bio_tag in ["B", "I", "O"], "Invalid Tag"
    conll_tag = string_tag[2:]
    if bio_tag == "O":
      # The span has ended.
      if active_conll_tag:
        spans.add((active_conll_tag, (span_start, span_end)))
      active_conll_tag = None
      # We don't care about tags we are
      # told to ignore, so we do nothing.
      continue
    elif bio_tag == "B":
      # We are entering a new span; reset indices and active tag to new span.
      if active_conll_tag:
        spans.add((active_conll_tag, (span_start, span_end)))
      active_conll_tag = conll_tag
      span_start = index
      span_end = index
    elif bio_tag == "I" and conll_tag == active_conll_tag:
      # We're inside a span.
      span_end += 1
    else:
      # This is the case the bio label is an "I", but either:
      # 1) the span hasn't started - i.e. an ill formed span.
      # 2) We have IOB1 tagging scheme.
      # We'll process the previous span if it exists, but also include this
      # span. This is important, because otherwise, a model may get a perfect
      # F1 score whilst still including false positive ill-formed spans.
      if active_conll_tag:
        spans.add((active_conll_tag, (span_start, span_end)))
      active_conll_tag = conll_tag
      span_start = index
      span_end = index
  # Last token might have been a part of a valid span.
  if active_conll_tag:
    spans.add((active_conll_tag, (span_start, span_end)))
  # Return sorted list of spans
  return sorted(list(spans), key=lambda x: x[1][0])

dataset = load_dataset('wikiann', 'en', split="train")
ner_tags = {
   0:"O",
   1:"B-PER",
   2:"I-PER",
   3:"B-ORG",
   4:"I-ORG",
   5:"B-LOC",
   6:"I-LOC"
}

def get_spans(tokens, tags):
  """Convert tags to textspans."""
  spans = tags_to_spans(tags)
  text_spans = [
      x[0] + ": " + " ".join([tokens[i]
                              for i in range(x[1][0], x[1][1] + 1)])
      for x in spans
  ]
  if not text_spans:
    text_spans = ["None"]
  return text_spans

for i, d in enumerate(dataset):
   tokens = d['tokens']
   tags = d['ner_tags']
   tags = [ner_tags[i] for i in tags]
   #spans = tags_to_spans([ner_tags[i] for i in tags])
   spans = get_spans(tokens, tags)
   print("spans ", spans)
   print(d)
   if i > 10:
     break;

could you let me know how one can access the datasets to be able to contribute to the repository? Maybe I could do it then
thanks

Cool ! Let me give you some context:
Contribution guide
You can find the contribution guide here:
https://github.com/huggingface/datasets/blob/master/CONTRIBUTING.md
It explains how to set up your dev environment in a few steps.
Dataset loading
Each Dataset is defined by a Table that have many rows (one row = one example) and columns (one column = one feature).
To change how a dataset is constructed, you have to modify its dataset script that you can find here:
https://github.com/huggingface/datasets/blob/master/datasets/wikiann/wikiann.py
It includes everything needed to load the WikiANN dataset.
You can load locally a modified version of wikiann.py with load_dataset("path/to/wikiann.py").
Define a new column
Each column has a name and a type. You can see how the features of WikiANN are defined here:
https://github.com/huggingface/datasets/blob/c98e4b8f23e3770c401c6d9326e243e1ffd599ec/datasets/wikiann/wikiann.py#L245-L263
Ideally we would have one additional feature "spans":
        "spans": datasets.Sequence(datasets.Value("string")),

Compute the content of each row
To build the WikiANN rows, the _generate_examples method from here is used. This function yield on python python dictionary for each example:
yield guid_index, {"tokens": tokens, "ner_tags": ner_tags, "langs": langs}

The objective would be to return instead something like
spans = spans = get_spans(tokens, tags)
yield guid_index, {"tokens": tokens, "ner_tags": ner_tags, "langs": langs, "spans": spans}

Let me know if you have questions !

The PR was merged. Issue should be closed.
CC: @lhoestq


Response & Timeout or any other pattern

It may or may not be related to the scope of the library however I could not find enough information on internet so that I ask.
When I use the send method of the websocket service, is there anyway that I can follow up the response? I know that I can send messages in one tunnel and listen to the responses in another tunnel but what I didnt understand is how I will get them all in a meaningful order. Here is an example case:
When I click on a button on my webpage (join room) I send a JOIN_ROOM_REQUEST to the websocket on the server. And meanwhile I disable the button because I do not want the user to click again and be prompted when his join request is accepted and executed. If everything goes well, the server will send an event over the websocket so that I can now let the user to join the room. However what if the server does not respond at all? How will I handle this situation? The button hanged disabled and the state cannot be updated back to its initial state.

I'm happy to help with support but could you post support questions on stackoverflow and DM me over Twitter so that I can get around to responding. Thanks!

... DM me the link
I meant to say.

I've even found your CV but could not find you on twitter :)
https://stackoverflow.com/q/44884363/5043925?stw=2

Twitter icon on the bottom of my website has it :)


Prepare of Release v2.6.0

Description
Prepare of Release v2.6.0
Issues Resolved
https://github.com/opensearch-project/opensearch-k8s-operator/issues/776
Check List

[x] Commits are signed per the DCO using --signoff
[ ] Unittest added for the new/changed functionality and all unit tests are successful
[ ] Customer-visible features documented
[x] No linter warnings (make lint)

If CRDs are changed:

[x] CRD YAMLs updated (make manifests) and also copied into the helm chart
[x] Changes to CRDs documented

Please refer to the PR guidelines before submitting this pull request.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Hey @swoehrl-mw @salyh @pchmielnik @jochenkressin @dbason can we move forward with the release?
Thanks
@bbarani


shell: improve data scan commands to support MATCH_EXACT filter

因为对于hash_scan来说，sortKey的精确匹配其实就是get
On Mon, Mar 11, 2019 at 5:57 PM Wu Tao<EMAIL_ADDRESS>wrote:

@neverchanje commented on this pull request.
In src/shell/commands/data_operations.cpp
https://github.com/XiaoMi/pegasus/pull/303#discussion_r264157337:

             return false;

         }

         break;

     case 's':

       options.sort_key_filter_type = (pegasus::pegasus_client::filter_type)type_from_string(

           ::dsn::apps::_filter_type_VALUES_TO_NAMES,

           std::string("ft_match_") + optarg,

           ::dsn::apps::filter_type::FT_NO_FILTER);

       options.sort_key_filter_type = parse_filter_type(optarg, false);

为啥有的 sortkey 支持 exact，有的不支持呢？
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/XiaoMi/pegasus/pull/303#pullrequestreview-212741880,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAgQPc4iKgBvuOQbM35q39yLZJNb0Obbks5vVih5gaJpZM4bn_7T
.


stl files?

hello can you please post the 3d printing stl files too?? plsssss

nvm i found it here https://github.com/cifertech/My-3D-Things/tree/main/Oled 0.96 case


Dynamic warning first

📑 I have found these related issues/pull requests
no issue
🏷 Feature Request Type
Status-page
🔖 Feature description
good morning,
We currently use uptime kuma to monitor certain elements of our network. We have a screen dedicated to displaying the status page (http://kuma:3001/status/page).
The problem is that we have a large number of checks on this status page and it is impossible for us to see them at first glance.
Would it be possible to move the warning elements to the top of the page?

✔ Solution
add an automatic sorting function to add warnings to the top of the page
❓ Alternatives
No response
📝 Additional Context
No response

Duplicate of https://github.com/louislam/uptime-kuma/issues/1936
TLDR: currently only such a PR has been opened for the dashboard


Guido's forest fragmentation layer

This is more of a gee issue... but I am having trouble getting the forest fragmentation layer into gee. The fragmentation layers are in a projection (EPSG:54052) that isn't supported by GEE. I have tried using gdalwarp to reproject them to EPSG:4326 and EPSG:3857
which completes successfully, but ends up highly distorted.
@yfinegold @12rambau have either of you worked with this projection or the forest fragmentation layers before? Any advice would be helpful! They're rather large too, so the time to fail testing is quite long...
GDAL Info for context:

gdalinfo fm30_fad_31.tif
Driver: GTiff/GeoTIFF
Files: fm30_fad_31.tif
Size is 400751, 147307
Coordinate System is:
PROJCS["World_Goode_Homolosine_Land",
GEOGCS["GCS_WGS_1984",
DATUM["D_WGS_1984",
SPHEROID["WGS_1984",6378137.0,298.257223563]],
PRIMEM["Greenwich",0.0],
UNIT["Degree",0.017453292519943295]],
PROJECTION["Goode_Homolosine"],
PARAMETER["False_Easting",0.0],
PARAMETER["False_Northing",0.0],
PARAMETER["Central_Meridian",0.0],
PARAMETER["Option",1.0],
UNIT["Meter",1.0]]
Origin = (-20037507.067161846905947,8190730.585661163553596)
Pixel Size =<PHONE_NUMBER>00000000,-100.000000000000000)
Metadata:
AREA_OR_POINT=Area
TIFFTAG_DATETIME=2019:09:30 10:24:41
TIFFTAG_DOCUMENTNAME=fm30_fad_31.tif
TIFFTAG_IMAGEDESCRIPTION=GTB_FOS, https://forest.jrc.ec.europa.eu/en/activities/lpa/gtb/
TIFFTAG_RESOLUTIONUNIT=2 (pixels/inch)
TIFFTAG_SOFTWARE=IDL 8.7.0, Harris Geospatial Solutions, Inc.
TIFFTAG_XRESOLUTION=100
TIFFTAG_YRESOLUTION=100
Image Structure Metadata:
COMPRESSION=LZW
INTERLEAVE=BAND
Corner Coordinates:
Upper Left  (-20037507.067, 8190730.586)
Lower Left  (-20037507.067,-6539969.414)
Upper Right (20037592.933, 8190730.586)
Lower Right (20037592.933,-6539969.414)
Center      (      42.933,  825380.586) (  0d 0' 1.40"E,  7d24'52.27"N)
Band 1 Block=400751x1 Type=Byte, ColorInterp=Palette
Color Table (RGB with 256 entries)
0: 213,48,38,255
1: 213,48,38,255
....

I have never seen this projection before

Oh yikes.. I will give it a look and can get in touch with colleagues at JRC if the issue persists

@yfinegold thanks let me know if you figure anything out. I tried projecting to a random UTM but ended up with a warp that looked like a panda...

Alright, it looks like twitter came through!  The correct gdal command to project he fragmentation layer was:
gdalwarp s_srs "+proj=igh +datum=WGS84 +x_0=0.0 +y_0=0.0 +lon_0=0dE +no_defs" -t_srs EPSG:4326 -overwrite -co "COMPRESS=DEFLATE" fm30_fad_31.tif fm30_fad_31_proj.tif
Looks like some of the confusion is that EPSG:54052 isn't an EPSG code, it's an ESRI code.


Inline SVG's can cause compilation error

Environment
## System:
 - OS: macOS 10.14.3
 - CPU: (12) x64 Intel(R) Core(TM) i7-8850H CPU @ 2.60GHz
 - Memory: 456.71 MB / 16.00 GB
 - Shell: 5.3 - /bin/zsh
## Binaries:
 - Node: 11.9.0 - ~/.nvm/versions/node/v11.9.0/bin/node
 - Yarn: 1.13.0 - /usr/local/bin/yarn
 - npm: 6.5.0 - ~/.nvm/versions/node/v11.9.0/bin/npm
 - Watchman: 4.7.0 - /usr/local/bin/watchman
## npmPackages:
 - styled-components: ^4.1.3 => 4.1.3

Reproduction
Look at the following Code Sandbox link. If you inspect the page you'll notice the rendered div with the class test2 has no styles according to the chrome inspector.
It looks like it might be an issue with the escaping in the SVG, as removing one of them fixes it, as does base64 encoding the svg inline.

There are some problems with your SVGs, namely the attributes don't have quotes so things like viewBox will be broken since there are unguarded spaces. The best practice for embedding svg is something like this:
const svg = '<svg viewBox="0 0 10 10"><path /></svg>';

const Thing = styled.div`
  background-image: url("data:image/svg+xml;,${encodeURIComponent(svg)}");
`;


Strange conflict colors in light theme

Hi,
Thank you for the great colorscheme.
I am getting strange conflict colors that make it hard to read with the light version of the colorscheme:

My lazy.nvim config:
return {
  "maxmx03/solarized.nvim",
  lazy = false,
  priority = 1000,
  config = function()
    vim.o.background = "light"
    vim.cmd.colorscheme("solarized")
    vim.cmd("hi Normal guibg=NONE ctermbg=NONE")
  end,
}

Here is the default colorscheme for comparison:

Are you using a plugin?, because i can't reproduce
Try to customize the following highlight groups and see if fix your problem.
Added
Changed
Removed

DiffAdd
DiffChange
DiffDelete
DiffText

require('solarized').setup {
    on_highlights = function (colors, color)
        local darken = color.darken
        local lighten = color.lighten
        local blend = color.blend
        local shade = color.shade
        local tint = color.tint

        ---@type solarized.highlights
        local groups = {
            Added = { fg = colors.green },
            -- ...
        }

       return groups
    end
}

You are correct; it was unrelated to solarized.nvim. Sorry about that!


Updates to content of declaration questions

Based on feedback this morning from CCS
Includes:

CCS edits 12/08/15
https://github.com/alphagov/digitalmarketplace-ssp-content/pull/56

Add missing questions
https://github.com/alphagov/digitalmarketplace-ssp-content/pull/57
(this involves additional Python to include these extra questions in validation and tests)

Fix spelling mistake
https://github.com/alphagov/digitalmarketplace-ssp-content/pull/58

https://www.gov.uk/service-manual/user-centred-design/resources/patterns/gender-and-sex.html#section-2

I spotted a spelling error in one of those commits, fixed on https://github.com/alphagov/digitalmarketplace-ssp-content/pull/58, can you merge before this one?

@tombye Good spot – amended the original commit on this branch with the new SHA.

:+1:

The following characteristics are protected characteristics—
age;
disability;
gender reassignment;
marriage and civil partnership;
pregnancy and maternity;
race;
religion or belief;
sex;
sexual orientation.

http://www.legislation.gov.uk/ukpga/2010/15/section/4
--
Why we have "gender (sex)" in our list of options, who knows. @cathrooney one for CCS/legal?


Tidy up FLT.lean

closes #52
Closes #52

Oh lol I didn't know that was added automatically :-)

awaiting-review

Thanks!


glances: 4.2.0 -> 4.2.1

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for glances is: Cross-platform curses-based monitoring tool
meta.homepage for glances is: https://nicolargo.github.io/glances/
meta.changelog for glances is: https://github.com/nicolargo/glances/blob/v4.2.1/NEWS.rst
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 4.2.1 with grep in /nix/store/857bk3bj8pg8jvvz7nikmxcqxvnz8k7r-glances-4.2.1
found 4.2.1 in filename of file in /nix/store/857bk3bj8pg8jvvz7nikmxcqxvnz8k7r-glances-4.2.1

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

glances

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/857bk3bj8pg8jvvz7nikmxcqxvnz8k7r-glances-4.2.1 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A glances https://github.com/r-ryantm/nixpkgs/archive/bc70bd6290b6128b47ef458938ea838b5343dabc.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/bc70bd6290b6128b47ef458938ea838b5343dabc#glances

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/857bk3bj8pg8jvvz7nikmxcqxvnz8k7r-glances-4.2.1
ls -la /nix/store/857bk3bj8pg8jvvz7nikmxcqxvnz8k7r-glances-4.2.1/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review

x86_64-linux

:white_check_mark: 2 packages built:

glances
glances.dist

Maintainer pings
cc @primeos @k0ral for testing.

[!TIP]
As a maintainer, if your package is located under pkgs/by-name/*, you can comment @NixOS/nixpkgs-merge-bot merge to automatically merge this update using the nixpkgs-merge-bot.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 362586

aarch64-darwin

:white_check_mark: 2 packages built:

glances
glances.dist


[BULK UPDATE] DocuTune - Rebranding links

Global effort for the Microsoft Learn platform rebrand
The Microsoft team is applying changes to content for the Microsoft Learn platform rebrand. Changes include modifications to current Microsoft Learn and Microsoft Docs terminology as well as associated domain name and content URL path changes.
Please review this draft PR and provide any necessary comments as soon as possible. Because these fixes are tightly scoped, we have approval to automatically merge these changes to the default branch for publication.
This PR was generated via DocuTune. It includes only targeted fixes and minor formatting adjustments.
CorrelationId: d8c4c3ac-d49a-4c95-9ddc-9822ca297907
InitiativeId: docutune-rebranding-2022-09
PointOfContact: Alex Buck

#docutune-draft

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

File
Status
Preview URL
Details

README.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

#docutune-ready

Docs Build status updates of commit 949ad46:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

README.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


update macos image from 11 to latest

API change check
API changes are not detected in this pull request.

communication pylint failures already exist and aren't related to this change so overriding those.


[Feature] Task Node Reuse（任务节点复用）

Is your feature request related to a problem? Please describe.
Every time a workflow is newly defined, new nodes must be created on the spot
Describe the solution you'd like
1.Can you add a task node menu to build a new node in advance?
2.When defining workflow, you can create new nodes and use one of the existing nodes.
Describe alternatives you've considered
In this way, the node information can be reused and the definition time of flow workflow can be saved.
Additional context

Is your feature request related to a problem? Please describe.
每次新定义工作流的时候都必须当场新建节点
Describe the solution you'd like
1、能不能加个任务节点菜单，可以提前新建好节点
2、定义工作流的时候可新建节点和使用已有节点二选一
Describe alternatives you've considered
这样节点信息可复用，且节省流工作流的定义时间
Additional context

for now， we have task copy like this:

can this solve your problem?
please update/add description in English for better global communication, thx!

This is possible in the same workflow, but we hope that the new task node will take effect in all workflows.

这在同一个工作流里是可行的，但我们希望新建的任务节点能在所有工作流里生效

最后怎么样了。。


Cleanup: remove useless constructor comment

It's the only one such comment in the repo.

Do you mean something like this?

exactly, looks like a great start :)

agreeing here, fixer would be nice :+1:

Thank you @kubawerlos.


theme: This url was changed

Check List
Please read and check followings before submitting a PR.

[ ] I want to publish my theme on Hexo official website.

[ ] I have read the theme publishing doc.
[ ] name is unique.
[ ] link URL is correct.
[ ] preview URL is correct.
[ ] preview URL web site is rendered correctly.
[ ] Add a screenshot to source/themes/screenshots.
[ ] Screenshot filename is same as value of name.
[ ] Screenshot size is 800 * 500.
[ ] Screenshot file format is png.

[ ] I want to publish my plugin on Hexo official website.

[ ] I have read the plugin publishing doc.
[ ] name is unique.
[ ] link URL is correct.

[ ] Others (Update, fix, translation, etc...)

Languages:
[ ] en English
[ ] ru Russian
[ ] zh-cn simplified Chinese
[ ] zh-tw traditional Chinese

Note
No need to translate ko, pt-br, th languages if you submit a PR for documentation.

Warning
ko, pt-br, th languages document are inactive. Please, submit issue if you want to continuous contribution to them.

Can confirm the domain is on the maintainer's GitHub profile: https://github.com/chenxz21

I think so

@chenxz21


Interpolation methods in Stan?

It would be nice if Stan had some simple one-dimensional interpolation methods built in. (Not super-important, since this should be doable within a Stan model.)
One place this issue arises when implementing ODE models driven by empirical data sampled at discrete time intervals. Because the time derivative needs to be evaluated at arbitrary time points, the values of the driving variables need to be evaluated between sample times.
Even linear interpolation would be sufficient for many cases: e.g.,
data {
  int nTimepoints;
  real[nTimepoints] x;
}
// ...
x_t <- interpolate_linear(x, t);

would result in x_t equal to a value linearly interpolated from x[i], x[i + 1], where i <= t <= i + 1.

This issue was moved to stan-dev/math#58


Add support for foundation presets

Adding support for preset foundation positions that work the same way as the actuator class does. Created a single init and update function for the foundation that updates lights, actuators, and presets.
Tested with my foundation, the only thing I can't test is a split foundation that would have a preset on either side.
If this looks good to you, could you publish a new version once it's merged? I need this to add support in home assistant for a select entity for presets.

All set!


#10/add json logging

This will present the logs as follows if configured as shown in the examples.
Otherwise it will fallback to stdout logging in default format.
Starting ECR-updater ..
Loading log configuration file from path './logging.json'...
{"asctime": "2021-05-31 08:13:37,798", "levelname": "INFO", "message": "Running credentials update loop ..", "pathname": "ecrupdater.py", "lineno": 178, "threadName": "MainThread"}
{"asctime": "2021-05-31 08:13:37,798", "levelname": "INFO", "message": "Starting ECR secret update loop ..", "pathname": "ecrupdater.py", "lineno": 97, "threadName": "MainThread"}
{"asctime": "2021-05-31 08:13:38,892", "levelname": "WARNING", "message": "NoCredentialsError: Unable to locate credentials", "pathname": "ecrupdater.py", "lineno": 30, "threadName": "MainThread"}

This way the logs can easily be parsed on a log aggregator such as graylog or ELK.
AC

[x] support optional json logging. Will modify the current stdout slightly.
[x] bump python to 3.8
[x] lock pypi dependencies

Nice, thanks for this!!


ci: update node version for actions

Actions on node12 are getting deprecated on 2023-06-14 - https://github.blog/changelog/2023-05-04-github-actions-all-actions-will-run-on-node16-instead-of-node12/
This PR updates node version used in actions defined in this repository.
NOTE: I have not tested whether the JS action script works on node 16.

Closing because it's a fork. We just need to sync the fork.


Add Key Vault-managed Storage sample

This is a sample that contains generated code for a would-be Azure.Security.KeyVault.Storage, though we don't want to release a package for that since we want to encourage developers to RBAC. As such, this sample can only build in our repo since it requires shared source from Azure.Core we do not want to duplicate; however, I added a custom target - CopySource - that copies all relevant source files except the .csproj and Program.cs.
The idea - and I tested that this works - is someone can copy the would-be Azure.Security.KeyVault.Storage files to a new or existing project, and with a minimal .csproj (just need to reference Azure.Core and maybe update/set the LangVersion to 7.3 or newer) build the source.
The sample itself demonstrates several APIs in a functional manner: after following the initial steps to set up managed storage in https://docs.microsoft.com/azure/key-vault/secrets/overview-storage-keys this sample will generate timed tokens to generate a SAS token you can append to blob or file URIs.

Feels like this sample has to be somewhere under keyvault

It's not specific to a package we have - in fact, the point is to produce a working "package". We don't have a precident for package "family"-level samples.

Is it specific to keyvault? Can it go into /sdk/keyvault/samples?

Is that supported? Not sure if our hooks pick anything like that up. If so, that looks reasonable. /cc @maggiepint @jongio

We should check and/or implement. The root samples directory is for cross-service samples and we would like to keep it reasonably clean. If the sample is service-specific it should go into a service directory.

@jongio is fine with sdk/keyvault/samples so I'll move it when I add the README.md with front matter.

/azp run net - keyvault - ci

Alex also reviewed the README in our 1:1.


module 'kornia' has no attribute 'adjust_brightness'

The module has moved from kornia to kornia.enhance (https://kornia.readthedocs.io/en/latest/enhance.html).
Could be fixed by specifying an older version in the requirements or by changing the import statement.
If could make a pull request if that makes your life easier. :)

I Believe I corrected all problems arising from this kornia namespace refactoring in my last merge.


running example results in a fork detection.

yarn example eos-transfers
...
State updated:
 {
  "volumeBySymbol": {
    "EOS": 590.2256
  },
  "totalTransfers": 14,
  "indexState": {
    "blockNumber": 8655579,
    "blockHash": "008412db36228bc3cce31eeede203a8ba7962f8c8d133de8438182464ab988b1"
  }
}
!! Fork detected !!
✓ BLOCK 8655587 MATCH:
  expected: 008412e2859f7530e9f130837b65f28ce0881a209013afae86a91579fd90aab4
  received: 008412e2859f7530e9f130837b65f28ce0881a209013afae86a91579fd90aab4
Rewinding 1 blocks to block (8655587)...
(node:2230) UnhandledPromiseRejectionWarning: TypeError: this.rollbackTo is not a function
    at ObjectActionHandler.<anonymous> (/root/demux-js/dist/demux/handlers/AbstractActionHandler.js:39:28)
    at Generator.next (<anonymous>)
    at /root/demux-js/dist/demux/handlers/AbstractActionHandler.js:7:71
    at new Promise (<anonymous>)
    at __awaiter (/root/demux-js/dist/demux/handlers/AbstractActionHandler.js:3:12)
    at ObjectActionHandler.handleBlock (/root/demux-js/dist/demux/handlers/AbstractActionHandler.js:37:16)
    at BaseActionWatcher.<anonymous> (/root/demux-js/dist/demux/watchers/BaseActionWatcher.js:45:75)
    at Generator.next (<anonymous>)
    at fulfilled (/root/demux-js/dist/demux/watchers/BaseActionWatcher.js:4:58)
    at <anonymous>
(node:2230) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 3)
(node:2230) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
Done in 109.09s.

Ran again. This time got a new error:
State updated:
 {
  "volumeBySymbol": {
    "EOS":<PHONE_NUMBER>999999
  },
  "totalTransfers": 8,
  "indexState": {
    "blockNumber": 8659778,
    "blockHash": "00842342aa2868436b3671933aa41e4c3eb720f2370d52e576d0f93b61a54716"
  }
}
(node:2395) UnhandledPromiseRejectionWarning: StatusCodeError: 500 - {"code":500,"message":"Internal Service Error","error":{"code":3100002,"name":"unknown_block_exception","what":"Unknown block","details":[{"message":"Could not find block: 8659783","file":"chain_plugin.cpp","line_number":1276,"method":"get_block"}]}}
    at new StatusCodeError (/root/demux-js/node_modules/request-promise-core/lib/errors.js:32:15)
    at Request.plumbing.callback (/root/demux-js/node_modules/request-promise-core/lib/plumbing.js:104:33)
    at Request.RP$callback [as _callback] (/root/demux-js/node_modules/request-promise-core/lib/plumbing.js:46:31)
    at Request.self.callback (/root/demux-js/node_modules/request/request.js:185:22)
    at Request.emit (events.js:159:13)
    at Request.<anonymous> (/root/demux-js/node_modules/request/request.js:1157:10)
    at Request.emit (events.js:159:13)
    at IncomingMessage.<anonymous> (/root/demux-js/node_modules/request/request.js:1079:12)
    at Object.onceWrapper (events.js:254:19)
    at IncomingMessage.emit (events.js:164:20)
(node:2395) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:2395) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
Done in 84.70s.

The example project currently does not support rollbacks from forks. This should probably just ignore forks, and continue as if it didn't happen. That may lead to data inconsistency, but it's probably fine for the example.

This is super annoying as it happens after minutes. How do you make a correct rollback? I tried using a noop in rollbackTo but after some time I get this error:
Error: Rollback history has been exhausted, and no rollback exhaustion handling has been implemented.

just got the same issue

Got the same issue


feat: refactor slurm script

use string formatting instead of file template. Allows more flexible sbatch parameter definitions.
adds --ntasks option to submit.py, which can reduce job wait times compared with using --nodes and --ntasks-per-node

Closes https://github.com/AllenNeuralDynamics/aind-data-transfer/issues/208

It looks okay to me, but I'll let Camilo give it a check. At some point soon, we'll need to centralize the way the SmartSPIM data is being uploaded with the way the ephys data is being uploaded.


Create hacktoberfest labels

As we discussed in the meeting that we are gonna create some hacktoberfest labels
cc: @containscafeine

Related

cc: @surajnarwade


chore: update websockets

This PR updates websockets version, which comes with a BREAKING CHANGE on the filter. Only DNS+WSS addresses are now returned on filter by default in the browser. The tests were update to pass a custom filter so that we can test this locally with loopback websocket addresses
Needs:

[x] https://github.com/libp2p/js-libp2p-websockets/pull/116

it's a breaking change in behavior only, and there is no reason why someone cannot use libp2p-websockets 0.15 with js-libp2p 0.29.x

That is true, but it might break local testing environments of users like injs-libp2p. I would like to just change it to latest once we have the migration guide and this information in there


chore(build): Ensure that the logic regarding the community check is correct and avoid unnecessary labelling

bors merge


Support request - Too many login attempts

Hello,
I am attempting to initialize this container, but I am getting an error, and I am not sure what may be wrong. Possibly this is entirely my fault, but the error reporting may need to be enhanced. Please let me know if there is a better location to request support.
I have taken the recommended configuration steps and I am attempting to use the config.json method. Environment is Windows Docker version 20.10.2, build 2291f61. docker run -d -e TZ=America/NewYork -v E:\docker\epicgames-freegames:/usr/app/config:rw -p 3000:3000 charlocharlie/epicgames-freegames:latest
When I initialize this container, it appears to successfully load in the config.json file and attempts to initialize the captcha with my email. I receive the email which has the a link with the baseurl and some appended string - example: http://localhost:3000?id=300f1231-5848-480a-b0dc-b29a1d8954d2
I am able to follow the link and, as the page indicates, I sometimes do nothing and sometimes fulfill a captcha request. After I have done so it says that the captcha is successful. I receive 3 emails sequentially, followed by the docker log stating:
[2021-01-17 00:00:32.865 +0000] ERROR (46 on 2d13a17afaa9): Too many login attempts
    Error: Too many login attempts
        at Login.login (/usr/app/src/login.ts:101:13)
        at processTicksAndRejections (internal/process/task_queues.js:97:5)
        at Login.login (/usr/app/src/login.ts:128:11)
        at Login.login (/usr/app/src/login.ts:128:11)
        at Login.login (/usr/app/src/login.ts:128:11)
        at Login.fullLogin (/usr/app/src/login.ts:205:7)
        at /usr/app/src/index.ts:20:7
        at async Promise.all (index 0)
        at main (/usr/app/src/index.ts:31:3)
Setting timezone: America/NewYork
Setting cron schedule as 0 12 * * *

I assume this is not the expected result. I do not have a game to claim at this point in time, but I assume this would result in the container failing to meet the objective, given the ERROR seen above. I wonder if the error is code 46? But I see this error code also for the Action Requested log message as well, so maybe not. This info level log message appears 3 times, each before the email is sent to the account.
[2021-01-17 00:00:03.619 +0000] INFO  (46 on 2d13a17afaa9): Action requested. Waiting for Captcha to be solved
Based on my attempts so far, it would seem that the container is running, the config is being loaded properly, the email is being sent successfully, and the simple web page/service at localhost:3000 is working correctly at least to the point that it can launch the page and captcha elements. I'm not sure if I have some kind of incorrect configuration? I'll try to put what non-secure details I can here:
{
    "accounts": [
        // Multiple accounts can be configured here
        {
            "email": "x -penguinairlines",
            "password": "x -penguinairlines",
            "totp": "x -penguinairlines"
        },
    ],
    "onlyWeekly": false,
    "runOnStartup": true,
    "intervalTime": 60,
    "cronSchedule": "0 12 * * *",
    "runOnce": false,
    "logLevel": "info",
    "baseUrl": "http://localhost:3000",
    "email": {
        "smtpHost": "smtp.gmail.com",
        "smtpPort": 587,
        "emailSenderAddress": "x -penguinairlines",
        "emailSenderName": "Epic Games Captchas",
        "emailRecipientAddress": "x -penguinairlines",
        "secure": false,
        "auth": {
            "user": "x -penguinairlines",
            "pass": "x -penguinairlines",
        },
    }
}

Thank you for taking the time to read my support request. Please let me know if there's anything else I should try.

The container tries to log in a few times before giving up, which is the error you see here. Epic's captcha process is very convoluted and black-box, so we can't see any details from them as to what caused the captcha token to fail.
I've been blindly throwing in solutions in this branch  to fix the issue, but it's tough to test as Epic is likely rate limiting my IP in the captcha backend. It's tough to tell if the login is actually consistent on that branch yet.
If you'd like to try that branch out, you can use the image charlocharlie/epicgames-freegames-test:latest. Let me know if that works out. If not, you may also be rate limited, so I'd recommend trying again in 24 hours.

The container tries to log in a few times before giving up, which is the error you see here. Epic's captcha process is very convoluted and black-box, so we can't see any details from them as to what caused the captcha token to fail.
I've been blindly throwing in solutions in this branch  to fix the issue, but it's tough to test as Epic is likely rate limiting my IP in the captcha backend. It's tough to tell if the login is actually consistent on that branch yet.
If you'd like to try that branch out, you can use the image charlocharlie/epicgames-freegames-test:latest. Let me know if that works out. If not, you may also be rate limited, so I'd recommend trying again in 24 hours.

Working properly on the test branch. Was experiencing the same issue.
Thanks @claabs !

Working properly on the test branch. Was experiencing the same issue.
Thanks @claabs !

Yes, thank you for working on this. I'm just glad to know there's potential I'm not screwing up. I'll give the test branch a shot after Tuesday when there's a new game to claim, and I'll watch the referenced issue.

Yes, thank you for working on this. I'm just glad to know there's potential I'm not screwing up. I'll give the test branch a shot after Tuesday when there's a new game to claim, and I'll watch the referenced issue.

I just deployed the test branch to master, so you can just pull the main image now.

I just deployed the test branch to master, so you can just pull the main image now.


Unreleased section on CHANGELOG

CHANGELOG file as an Unreleased section which is never used until now.
Should we remove it to avoid any confusion ? Or to be more careful when creating more feature ?

Good question. I think to use it could simplify the task of the persons doing the actual release. However, if in any case we have to go through the git log I am not so sure about its utility.

Even if we fill the changelog at each PR, we'll have to get through the logs anyway to check that nothing is missing...

I would prefer to remove it, it is not used and it is a wast of time for the release

Removed.


DOCS Include the RFC process, template and archive of past RFCs in the docs

Pulls together the process and ideas for having a RFC process outlined in https://groups.google.com/forum/#!topic/silverstripe-dev/5IEGRHNgToU and draws from the lessons learned in the pilot RFC at #3792
Review and improvements welcome (please PR direct to my branch).
@mateusz you might want to comment/improve based on your learnings.

Updated this with @mateusz's suggestions. Still think it would be good to have some index of RFC's. I've added other known RFC's (even if they aren't in the prescribed format yet) and a note for people to add as part of the process. If not here then where should we do these?

Note: php has a space to hold all current rfc's https://wiki.php.net/rfc maybe something like this on ss.org?

Be good to get final agreement and merge of this process to help others write good RFCs for the core committer hangout reviews.

Great Feedback @jonom I'll keep making updates until we can get to a workable version to adopt. We dont have to get this 100% perfect, just usable. We can always update and improve as we learn more about the process.

Totally, just wanted to throw a few ideas out - don't want to slow down this getting in to the docs, we're already using the process after all :D

Oh I didn't see your intro note about PR-ing edits direct to your branch, sorry

@jonom yeap - feel free to send your edits my way. Otherwise I'll have to find some time again to manually make these changes and push to the PR.

Have opened a PR against your branch @camfindlay

This was discussed in the core committer hangout today https://plus.google.com/b/106943799421369121040/events/csg1b9v8ih9586cah1l1tvd82u4
I will finalise this by creating links to the issue tags for RFCs in favour of the index table at the bottom of the doc.

Will eventually need a merge up to 3.2 and up

@sminnee updated the doc for the RFC process, please feel free to do a final look over and merge at your convenience.

Some small grammar errors remain, but clear enough. Merging, so further fixes can be raised as further PRs.

Merged against 3.2 here: https://github.com/silverstripe/silverstripe-framework/commit/9672cd3994011869ddc194a8cc377891220a8d41


3.0.0 Update

Whew! After a long effort, the next big PR is here – this one:

Converts library to use asyncio
Adds a full test sweet (with 100% coverage)
Completely overhauls documentation
Adds Makefile with common tasks
Adds Travis, CodeClimate, and CodeCov configs/badging
Adds contribution instructions
Adds author recognition

@w1ll1am23: to fully realize this, once the PR is accepted and merged, I recommend we undertake a few additional steps:

[ ] Set up travis-ci.org for this repo and push (will need your help, as I don't seem to have access to this repo in that environment).
[ ] Set up Codecov for this repo and push (will need your help, as I don't seem to have access to this repo in that environment).
[ ] Set up CodeClimate for this repo and push (will need your help, as I don't seem to have access to this repo in that environment).
[ ] Ensure that all badges in README.md are appearing after 1, 2, and 3 are completed.
[ ] Look at adding any GitHub checks that will force future PRs to pass 1, 2, and 3 (optional).
[ ] Start tagging and adding releases to the repo – example, once this is squash-merged in, tag the commit as 3.0.0, create a release out of it, and add the items from CHANGELOG.md.
[ ] Ensure that pipenv run make publish pushes the latest version to the correct PyPi repo.
[ ] Activate Issues for this repo (so that others can start posting issues here, rather than at @greencoder's repo).

Once all of this is complete, I can begin work on transitioning the HASS integration to use 3.0.0.
Let me know how I can assist!

Merging; will accomplish remaining tasks after repo ownership is cleaned up.


fix path in go.mod

ok, let's fix this temporarily, because this is a fork and I'd like to make a PR to upstream

ok, let's fix this temporarily, because this is a fork and I'd like to make a PR to upstream


How can I edit grub after installation?

I have successful installed android x86 system with the installer. It works.
After that, I am trying to install another android x86 OS on my disk,but can't find grub.cfg,or /boot folder.
Can you help me?
By the way, would you support Remix OS in the future,since it's optimized for desktop.

GRUB must be installed to EFI partition so firmware can load grub.efi binary
to Access the EFI partition from windows:
Launch cmd as Admin and type the following commands:
taskkill /f /im explorer.exe
mountvol z: /s
explorer.exe

@ExtremeGTX Thanks,I have found the grub.cfg follow your guide.


Update task modifies deno.json file

What is the issue?
Currently after running the update task provided (deno run -A -r https://fresh.deno.dev/update .) it, understandably performs a number of checks & adds stuff if it is missing. However, I have noticed 2 key issues with this:
Formatting
If you have a custom fmt config provided, say with a custom tab indent size, the update script will not honour this & will format the deno.json file to the default fmt config.
_fresh exclude
Since Deno 1.4 & the introduction of AOT builds, the update task will, naturally, prefer to make sure the _fresh directory is excluded from both linting & formatting.
However if you use a custom source directory, such as src/, then after the update task is run it will always add _fresh to the excludes when src/_fresh already exists.

I agree that it doesn't support the src directory properly.
But prior to running deno task update I have:
  "lint": {
    "rules": {
      "tags": [
        "fresh",
        "recommended"
      ]
    }
  },
  "fmt": {
    "indentWidth": 4
  },

and afterwards I have:
  "lint": {
    "rules": {
      "tags": [
        "fresh",
        "recommended"
      ]
    },
    "exclude": [
      "_fresh"
    ]
  },
  "fmt": {
    "indentWidth": 4,
    "exclude": [
      "_fresh"
    ]
  },

Can you help me to understand the issue with fmt being overwritten? It seems fine to me.

The video below should better demonstrate this issue @deer.
After running the update command the entire deno.jsonc file gets formatted, but not to the correct format spec. In this case I have a custom fmt config in my deno.jsonc file & the update script seems to ignore this custom config.
At the end of the video I use Cmd+S to let the file save formatting fix this issue but it would of course be better if these formatting changes were not applied at all.
https://github.com/denoland/fresh/assets/4991309/f408999f-0d9a-460d-8e3f-b180857dbd9f

I see, thanks for clarifying. I guess your original point was clear enough -- I just misread it! The issue isn't that fmt is overwritten or something, but rather fmt isn't used to format the file when update is finished.


Does url support dynamic link?

Case: I want to create an app json.
Problem: The app is downloaded from sourceforge.net, but it seems sourceforge.net doesn't have a static link for the file, instead, it will automatically select a mirror. Here is an example: https://sourceforge.net/projects/orwelldevcpp/files/Portable Releases/Dev-Cpp 5.11 No Compiler Portable.7z/download

I saw an issue in #3586, but the case is different here. In issue #3586, the url seems to have a pattern to follow while in this case the link is delivered by server.
And after the countdown, it does have a direct link option, but the link was told to be too long.
I think I'm lack of the knowledge on how the browser can download the file while scoop can't do the same thing.

https://github.com/h404bi/dorado/blob/master/bucket/dev-cpp-no-compiler.json#L8
just use the link, Scoop will follow the URL redirection.

https://github.com/h404bi/dorado/blob/master/bucket/dev-cpp-no-compiler.json#L8
just use the link, Scoop will follow the URL redirection.

Many thanks, seems like I though too much...


Adding a new user (or editing an existing one) fails. (Uses Leaf v2 syntax #Extend.)

Trying to add a new user or edit an existing user fails.
[ ERROR ] TemplateKitError.missingTag: No tag named extend is registered. (/Users/majortomlocal/Developer/Server/SteamPressExample/SteamPressExample/Resources/Views/blog/admin/createUser.leaf line: 0 column: 1 range: 1..<15) (TemplateSerializer.swift:60)

This should be fixed in the latest commits to the vapor3 branch


Fix broken parabolic snap store link

The snap link of parabolic was https://snapcraft.io/tubeconverter instead of https://snapcraft.io/tube-converter

Thanks!


Fix migration utility legacy object name check

Critical Changes
Changes
Issues Closed
Fixes #5529
Community Ideas Delivered
New Metadata
Deleted Metadata

Tracking W-7782995

@psadie-sfdo just added a couple of comments


feat: split and inject fee curve parameters

Description

Pull Request Type

[ ] :bug: Bug fix (Non-breaking Change: Fixes an issue)
[ ] :hammer_and_wrench: Chore (Non-breaking Change: Doc updates, pkg upgrades, typos, etc..)
[ ] :nail_care: New Feature (Breaking/Non-breaking Change)

Issue (if applicable)

closes #
Risk

High Risk PRs Require 2 approvals

What protocols, transaction types or contract interactions might be affected by this PR?

Testing

Engineering

Operations

Screenshots (if applicable)

Current dependencies on/for this PR:

#6301  👈
develop

This stack of pull requests is managed by Graphite.


Can't remove temp folders after imageoptim runs

Hi, I'm getting the following errors every time the script is run:
rm: /var/folders/mn/mn5ycnzx7h90rsbmk7sypskm0000gn/T//imageoptim-cli/png/Users/username: Permission denied
rm: /var/folders/mn/mn5ycnzx7h90rsbmk7sypskm0000gn/T//imageoptim-cli/png/Users: Directory not empty
rm: /var/folders/mn/mn5ycnzx7h90rsbmk7sypskm0000gn/T//imageoptim-cli/png: Directory not empty
rm: /var/folders/mn/mn5ycnzx7h90rsbmk7sypskm0000gn/T//imageoptim-cli: Directory not empty
If I sudo rm -r the imageoptim folder, i just get the same error next time I run the script. Anything I can try to prevent it?
imageoptim-cli version 1.11.4

Sorry for the delay @jhebb. I get this issue myself and plan to fix it, but so far I'm not sure how to fix it.

I get this same error, both in 1.11.4, but also in 1.11.6
:-/

This should be fixed in<EMAIL_ADDRESS>by the fix for #87.

@JamieMason I upgraded to 1.14.8 but still get this error - seems to be specifically when I run it on files on my desktop. Running it elsewhere works great.

@jhebb could you experiment and see if it only happens in that dir with particular flags set? Or if it just happens at all times when run from there?

Different flags don't seem to matter. I tried:
find *.jpg | imageoptim -j -q
find *.jpg | imageoptim -j
find *.jpg | imageoptim
find *.jpg | imageoptim -q
imageoptim -d ~/Desktop
imageoptim -j -q -d ~/Desktop
etc

Not a big deal for me, everything still runs fine and works.

OK thanks. Will leave this closed


Added support for src/ based apps

This is now fixed in the new cli. We added support for src dirs. Feel free to reopen if this is not working. Thank you.


[Feature Request]: OAuth for Discord

Package
lucia-auth
Describe the problem
Discord is often used for OAuth. For any gaming related website Discord is the best OAuth choice for the community.
Describe the proposed solution
Add a Discord OAuth provider to lucia.
Alternatives considered
No response
Additional information
No response

This is definitely one of the things we'll work on before 1.0. I'm currently working on setting up a proper release workflow so it'll come after I finish that.

Awesome! Thanks for the update :)

Done! Added in @lucia-auth/oauth 0.6.0 with #385


Camp list interface to Website

Although this is more to do with the website, since this is an integration with our data via our API I'm documenting this here. At the moment there are some discrepancies between the data displayed on the website and data in Spark
Desired behavior as follows:

Camp managers can set camp as open or closed to new members
Camp managers can set camp as published or not published to appear on the midburn website

The two settings are unrelated.
Camps that are not published will not appear in the list at all
Camps that are closed to new members will not have contact information displayed.

@OriHoch

this is the relevant repo - https://github.com/Midburn/camps_index
the list is not updated automatically with spark at the moment, I will try to do it this week

done in camps index v1.3.0, automatically updated from spark every 10 minutes, continuously deployed to staging and production from production.midburn.org/camps-2018/


V1.1.8: error deleting playlists

I had several file system playlists without content, so decided to delete them. Two issues found:
1: when I delete a playlist, it remains in the list till I close the playlist overview.
2: I had one playlist that I can't remove and caused two errors:
[546718140736] Error handling message: Unknown error (unknown_error)
21:12:55 – (ERROR) Home Assistant WebSocket API (custom integration)
Job [Add file://playlist/albumsnightwishnightwishm3u to database] failed with error 'utf-8' codec can't decode byte 0xe4 in position 3021: invalid continuation byte.
21:12:55 – (ERROR) /usr/local/lib/python3.9/site-packages/music_assistant/mass.py

Details:
Logger: homeassistant.components.websocket_api.http.connection
Source: custom_components/mass/websockets.py:736
Integration: Home Assistant WebSocket API (documentation, issues)
First occurred: 21:12:55 (1 occurrences)
Last logged: 21:12:55

[546718140736] Error handling message: Unknown error (unknown_error)
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/decorators.py", line 27, in _handle_async_response
    await func(hass, connection, msg)
  File "/config/custom_components/mass/websockets.py", line 96, in async_get_mass_func
    await orig_func(hass, connection, msg, mass)
  File "/config/custom_components/mass/websockets.py", line 736, in websocket_library_remove
    await mass.music.remove_from_library(item.media_type, item.item_id, item.provider)
  File "/usr/local/lib/python3.9/site-packages/music_assistant/controllers/music/__init__.py", line 220, in remove_from_library
    await ctrl.remove_from_library(
  File "/usr/local/lib/python3.9/site-packages/music_assistant/models/media_controller.py", line 153, in remove_from_library
    db_item = await self.get(
  File "/usr/local/lib/python3.9/site-packages/music_assistant/models/media_controller.py", line 96, in get
    return await self.add(details)
  File "/usr/local/lib/python3.9/site-packages/music_assistant/controllers/music/playlists.py", line 52, in add
    await self.mass.metadata.get_playlist_metadata(item)
  File "/usr/local/lib/python3.9/site-packages/music_assistant/controllers/metadata/__init__.py", line 102, in get_playlist_metadata
    for track in await self.mass.music.playlists.tracks(
  File "/usr/local/lib/python3.9/site-packages/music_assistant/controllers/music/playlists.py", line 47, in tracks
    return await provider.get_playlist_tracks(item_id)
  File "/usr/local/lib/python3.9/site-packages/music_assistant/controllers/music/providers/filesystem.py", line 285, in get_playlist_tracks
    for line in await _file.readlines():
  File "/usr/local/lib/python3.9/site-packages/aiofiles/threadpool/utils.py", line 45, in method
    return (yield from self._loop.run_in_executor(self._executor, cb))
  File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.9/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe4 in position 3021: invalid continuation byte

Logger: music_assistant.mass
Source: /usr/local/lib/python3.9/site-packages/music_assistant/mass.py:243
First occurred: 21:12:55 (1 occurrences)
Last logged: 21:12:55

Job [Add file://playlist/albumsnightwishnightwishm3u to database] failed with error 'utf-8' codec can't decode byte 0xe4 in position 3021: invalid continuation byte.
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/music_assistant/controllers/music/playlists.py", line 52, in add
    await self.mass.metadata.get_playlist_metadata(item)
  File "/usr/local/lib/python3.9/site-packages/music_assistant/controllers/metadata/__init__.py", line 102, in get_playlist_metadata
    for track in await self.mass.music.playlists.tracks(
  File "/usr/local/lib/python3.9/site-packages/music_assistant/controllers/music/playlists.py", line 47, in tracks
    return await provider.get_playlist_tracks(item_id)
  File "/usr/local/lib/python3.9/site-packages/music_assistant/controllers/music/providers/filesystem.py", line 285, in get_playlist_tracks
    for line in await _file.readlines():
  File "/usr/local/lib/python3.9/site-packages/aiofiles/threadpool/utils.py", line 45, in method
    return (yield from self._loop.run_in_executor(self._executor, cb))
  File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.9/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe4 in position 3021: invalid continuation byte

How did you remove the playlist ? On disk ?
Do you expect to be able to delete the playlist from the MA interface too ?

For 50 that worked, except this one

Ah yes. Well, that doesn't actually remove it from disk but just hides it.
I'm still a bit in doubt wether to actually remove files when someone presses that "remove from library" button. It is pretty destructive.
I will take a look at the issue mentioned above but besides that my question is if MA should handle file deletions when you press that "remove from library" button

Only Hiding is probably I good approach.

The file causing the crash is actually corrupted. The playlist file should be utf-8 encoded and in this case it isn't.
So I think you should just delete the empty file from disk or try to save it with a text editor to restore it.

Ah clear. I tried to delete them as they where not correct anyway. But I think deleting (hiding) should always work?!
Ps: I'm going to do a new import any way with correct playlists and fixing some more folder names, and ID3 tags. But for now I keep the original set to be able to verify your fixes

Checked in a small fix that logs the exception when trying to open a corrupted playlist but doesn't crash so you actually hide it

Looks good:
Logger: music_assistant.mass.music.file
Source: /usr/local/lib/python3.9/site-packages/music_assistant/controllers/music/providers/filesystem.py:294
First occurred: 12:23:29 (2 occurrences)
Last logged: 12:23:29

Error while parsing playlist /media/MP3_normalized/Albums/NightWish/NightWish.m3u
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/music_assistant/controllers/music/providers/filesystem.py", line 286, in get_playlist_tracks
    for line in await _file.readlines():
  File "/usr/local/lib/python3.9/site-packages/aiofiles/threadpool/utils.py", line 45, in method
    return (yield from self._loop.run_in_executor(self._executor, cb))
  File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.9/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe4 in position 3021: invalid continuation byte

The other issue is still in. The removed (hidden) playlist is not removed from the list until you close the playlist view and re-open the view. That is at least confusing.

The other issue is still in. The removed (hidden) playlist is not removed from the list until you close the playlist view and re-open the view. That is at least confusing.

Ah yes, I need to notify the listing that the content needs to be refreshed. I'm going to introduce a generic approach for that with an event from the backend, same logic that is now used when the metadata of an object was lazy loaded in the background and you automagically see the new details.

By the way. After upgrading from 1.1.9 to 1.1.11 I got a rescan and all previously deleted playlist where back. No problem while I'm beta, but something to avoid once final

Yes, at this time I'm too lazy to write migration logic so I just reset the db each I time I make a possibly breaking change in the model. I think we're almost at the point where we reach the first stable version after which I will also follow a more structured release pattern and try to avoid db rescans whenever possible ;-)
For me the last things before I consider things as "MVP" or "first stable version" is when the magic logic and metadata issues are all fixed because that is the foundation of everything. I think we're almost there. Only this change is left:
https://github.com/music-assistant/hass-music-assistant/issues/184#issuecomment-1132604363

this should be fixed in v1.1.14

Yes it is 🥳


Potential controllerLink / upgrade position planning failure

Commit or otherwise version of the bot
2.112.0 (4e3e7e344f8a30434ea769f3cca72612a9964375)
Describe the bug
Creep attempting to path onto controller link
RCL 6, default WCM creep (name: 3_200_W8S2_3_8).
Expected behaviour
My assumption is that the creep should be pathing onto a tile around the link, but I cannot be sure
How can we reproduce this?
Unknown
Potential fix
Applicable media

it's plausible though unknown that this upgrader might be experiencing the same bug

Seems like caching _upgradePositions inter tick was allowing the controllerLink to be ignored pre global reset


Data from such a repository can't be authenticated and is therefore potentially dangerous to use.

Linux Mint Sylvia shows these problems.
W: The repository 'https://packages.microsoft.com/repos/azure-cli sylvia Release' does not have a Release file.
N: Data from such a repository can't be authenticated and is therefore potentially dangerous to use.
N: See apt-secure(8) manpage for repository creation and user configuration details.
E: Failed to fetch https://packages.microsoft.com/repos/azure-cli/dists/sylvia/main/binary-amd64/Packages  404  Not Found
E: Some index files failed to download. They have been ignored, or old ones used instead.

You must choose from this list: Ubuntu trusty, xenial, and artful
Debian wheezy, jessie, and stretch.
There is no specific package for Sylvia.
See https://docs.microsoft.com/en-us/cli/azure/install-azure-cli-apt?view=azure-cli-latest