Pdf Js is rendering my report with "=" sign in some of Headings

I am getting this output when i have data in it, and without Data Heading was OK.
Its working fine with chrome and in adobe but not rendering well in pdf.js

When reporting an issue, please make sure that you read: https://github.com/mozilla/pdf.js/blob/master/CONTRIBUTING.md; especially the first paragraph which I'm also quoting below:

The issues are used to track both bugs filed by users and specific work items for developers. Try to file one issue per problem observed. Please specify a valid title (e.g. "Glyph spacing is incorrect" instead of "PDF.js does not work") and provide more details about the issue: link to the PDF, location in the PDF, screenshot, browser version, operating system, PDF.js version and JavaScript console warning/error messages. Issues that do not have enough details provided will be closed as invalid/incomplete.

Without access to a test-case, there is unfortunately nothing anyone will be able to do about this!
I would suggest that you try to create a reduced test-case, without any sensitive/private data, and make that available to us.
Closing as incomplete for now.


Struggling with Test Case 8 for Lab 5

Summary
I'm having trouble with test case 8 and not sure how to debug or find where my code logic is not appropriate.
Description:
From the screenshot I attached, the inputTimes seem to be getting jumbled up as expected output service time is different from my output. Am I calling for serviceTime too many times?
For context, I am currently running Simulator with a helper class ServerManager to manage the queues at each server and update the servers with customer done time when necessary. Simulator takes care of the events and flow (whether customer is immediately served, has to wait to be served, or has to leave) and calls for an available server from ServerManager to create the events.
Code Snippets
Attach code snippets (if any)
Screenshots

Potential issues might include:

Getting the value of serviceTime before you actually start servicing the customer.
Not extending the waiting time of customers that are actually still in the queue.

Hello! I had the same issue and it was due to calling get() to get the service time before serve event occurs

@wilsonwid  do you mind sharing how you implement it such that serviceTime is only retrieved when serveEvent is executed? As for my implementation, the serviceTime is called in wait event to update the expecetedServeTime and busyUntil. If i getServiceTime only when serveEvent is executed, i will get the error shown above

int freeQueueIndex = manager.getFreeQueueIndex(currentTime, this.qmax);                 double nextFreeTime = manager.getServer(freeQueueIndex).getTime();                 Served served =                      new Served(customer, manager.getServer(freeQueueIndex), nextFreeTime);                 customer = customer.setServedTime(served.getOccurrence());                 Done done = new Done(customer, manager.getServer(freeQueueIndex),                      customer.getServedTime() + customer.getServiceTime());                 manager = manager.addServerQueue(                     freeQueueIndex, served.getOccurrence(), done.getOccurrence());                 double waitTime = served.getOccurrence() - customer.getArrival();                 totalWaitingTime = totalWaitingTime + waitTime;                 Wait wait = new Wait(customer, manager.getServer(freeQueueIndex));                 pQueue = pQueue.add(served).add(done).add(wait);
code snippet of calling get when a customer has to wait to be served. i'm not sure whether i'm calling service time before the serve event as i only call it in my Done event

@wilsonwid do you mind sharing how you implement it such that serviceTime is only retrieved when serveEvent is executed? As for my implementation, the serviceTime is called in wait event to update the expecetedServeTime and busyUntil. If i getServiceTime only when serveEvent is executed, i will get the error shown above

my implementation includes just having serviceTime in serve event. other times, i just use super of the previous event time.
if you would like this implementation of serviceTime being only retrieved when serveEvent is executed, then you simply supply the customer with a supplier attribute now rather than a double serviceTime attribute, and use a .get() to obtain the serviceTime from the supplier within the customer.

I got exactly same error. There are possible reasons:

Maybe you retrieved service time too early even before the customer is served. It should be retrieved when you execute your method within serve method.
Multiple serving can happen together. For instance, if customer 1 is waiting and customer 2 arrives. Even though customer 1 should be served, since the time where customer 1 arrives and actually serves are not updated accordingly (which means supplier function is not initialized yet), customer 2 might get served ahead of customer 1.
Alternatively even though waiting customer is not time to be served, since the time of serving is not updated accordingly, it might serve customer waiting haphazardly. This was my problem and I resolved it by creating separate waiting class where it checks whether waiting customer can be served or not, and if its serving time stipulated/retrieved from server attribute in the class is too fast (earlier than the desired time), I pass them to new waiting class in order for them to wait in the queue further.

Hi, I came across this error as well. U have to retrieve the service time only when customer is served. u cant retrieve it in wait either

Got the same issue as well, solved it once i removed retrieving the service time from the wait event

If u only use the supplier.get() once in ServeEvent and still face this issue, maybe u wanna check whether it is called within the constructor? If it is used in constructor, the supplier is also called in the classes that make a new Serve even though it is only called in ServeEvent

hi all thanks for your help! ive resolved this by modifying the way i process the queue (i was calling service time before the customer was served) however ive encountered a new issue... do let me know if anyone has gotten this error before and how to resolve it.

all subsequent service times seem to be correct, so i don't think calling service time is an issue anymore, but im not sure why customer 18 and 14 is having problems with their done time being slightly off causing everything else to spiral out of control

Hi, given that the done time for 18 is late by 1sec while the done time for 14 is earlier by 1sec, could be possible that their service times were assigned wrongly i.e. service time for 18 is assigned to 14 and vice versa. You might want to check through ur logic for assigning service times and see if there's anything you missed out


⚠ Bofrost.be has degraded performance

In 3b16178, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1968 ms

Resolved: Bofrost.be performance has improved in 15bc1ad after 25 minutes.


MAKE A BETTER README.MD! NEEDS TO BE USERFRIENDLY AND ATTRACTIVE!

OPEN DEVIN IS 2X BIGGER THAN DEVIKA! DO NOT LOSE THE RACE! OPEN DEVIN WILL WIN THE #1 OPEN SOURCE CODER! DESTROY OPEN AI! DESTROY DEVIN! DESTROY DEVIKA! OPEN DEVIN WILL SUCCEED!!!!!!!!!!!!!

If you have any concrete suggestions for making a better README please either send a PR or post an issue or discussion! This issue is not concrete enough to fix, so I'll close it for now.


[bug fix] log-streaming

closing in favor of #435 which includes unit tests for the feature. fix contents should be the same


[Event Request] Codeunit 5875 Phys. Invt. Rec.-Finish (Y/N) - OnBeforeOnRun

Hi Team,
In codeunit 5875 we need possibility to replace and avoid using standard code. Having event with handling in procedure OnRun, would be a perfect solution :

[IntegrationEvent(false, false)]
local procedure OnBeforeOnRun(var PhysInvtRecordHeader: Record "Phys. Invt. Record Header"; var IsHandled: Boolean)

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


Support downcast machinery

This requires to 1) choose traits of log4rs which're needed downcasting, 2) peek most relevant downcast crate, and 3) follow all crate instructions.

I suggest implement downcasting, at least, for these traits which can be accessed through log4rs::config::Config: Append and Filter (I'm not sure about Filter, but Append is totally wanted).
The most popular would be the best match I guess: downcast-rs.
downcast-rs requires chosen trait to have either Downcast or DowncastSync as a trait constraint (DowncastSync is the best choice). Then a macro should be invoked: impl_downcast!(sync Append);

(see downcast-rs usage example here)
As @estk mentioned in #100, 3rd step is major change.

I hesitate to make a foreign trait part of our public api, which is why I suggest we simply rely on the Any trait as the constraint which enables the downcast of Appenders.
The only thing required to enable downcasting is exposing the typeid of the concrete type. Any gives us that, and as far as I can tell downcast-rs is sugar around the Any trait.
With this in mind @survived could you generalize the issue here so that its less of a task list and more of a requirements doc? We would want access loggers, and appenders with their respective filters.

@estk Adding std::any::Any as constraint won't work. Please check this gist for example. To support downcast magic we need a downcast magical crate, there's no way to escape this.

Here's a playground link to what I had in mind.
I totally get that it is easier to use the downcast crate but my primary concern here is involving a foreign crate in our public interface. Using downcast-rs would totally be appropriate if the interface was private and the Downcast constraint was never exposed to a user.

Oh, ok, now I understand your idea, thanks. Yep, having no dependency on other crate is totally greater solution.

However, notice that support downcast in this way has disadvantages:

Implementing 'dowcastable' traits requires writing as_any (as_any_mut ?) manually which is most likely a copypaste;
Theoretically implementation could break 'return self' rule and return something else.

Downcast crate allow us to use Layer Supertype pattern to avoid this problems. But I agreed that avoiding dependencies may be more desired.
I've updated issue according to your suggestions, @estk


how to create OCPP scenario between CP and CS

I am a beginner trying to make an OCPP program, based on the existing CP example , I modified it as follows
import asyncio
import logging
import websockets
from datetime import datetime
from ocpp.routing import on
from ocpp.v16 import ChargePoint as cp
from ocpp.v16.enums import Action, RegistrationStatus, FirmwareStatus, ChargePointErrorCode, ChargePointStatus, CancelReservationStatus
from ocpp.v16 import call, call_result
#logging.basicConfig(level=logging.ERROR)
logging.basicConfig(level=logging.INFO)
class ChargePoint(cp):
# operations inititated by charge point
async def send_boot_notification(self):
   request = call.BootNotificationPayload(
       charge_point_model = "Optimus Prime" , charge_point_vendor = "The Mobility 123" , charge_point_serial_number="1ABC"
       )
   response = await self.call(request)

   if response.status == 'Accepted':
       print("Connected to central system.")

async def send_heartbeart(self):
    """
    This contains the field definition of the Heartbeat.req PDU sent by
    the Charge Point to the Central System. See also Heartbeat
    No fields are defined.
    """
    request = call.HeartbeatPayload()
    response = await self.call(request)
    print(response.current_time)
    print("-> heartbeat")

async def send_start_transaction(self,tx_id,tx_val):
    request = call.StartTransactionPayload(
        connector_id=1,
        id_tag='1010010112345678',
        meter_start=tx_val,
        reservation_id=tx_id,
        timestamp=datetime.now().isoformat()
    )
    response = await self.call(request)
    if response.id_tag_info['status'] == RegistrationStatus.accepted:
        print("===================================")
        print("StartTransaction started. transaction_id: ", response.transaction_id)
        print("===================================")
    print ("-> ", response.transaction_id)

async def send_stop_transaction(self,tx_id,tx_val):
    request = call.StopTransactionPayload(
        id_tag='1010010112345678',
        meter_stop=tx_val,
        timestamp=datetime.now().isoformat(),
        transaction_id=tx_id
    )
    response = await self.call(request)
    if response.id_tag_info['status'] == RegistrationStatus.accepted:
        print("===================================")
        print("StopTransaction started. transaction_id: ")
        print("===================================")

@on(Action.ClearCache)
def on_clear_cache(self, **kwargs):
    logging.info('========== Got a Clear Cache ==========')
    #status =  "Accepted" / "Rejected"
    return call_result.ClearCachePayload(
        status = "Accepted"
    )

async def main():
async with websockets.connect(
'ws://<IP_ADDRESS>:8080/steve/websocket/CentralSystemService/CP_1',
subprotocols=['ocpp1.6']
) as ws:
cp = ChargePoint('CP_1', ws)
await asyncio.gather(cp.start(),cp.send_boot_notification())
if name == 'main':
asyncio.run(main())
My question is after doing a boot notification, how do I do other transactions, such as send_start_transaction or send_heartbeart because it looks like the program has stopped after running the await command asyncio.gather(cp.start(),cp.send_boot_notification())

Change the line
asyncio.gather(cp.start(),cp.send_boot_notification())
with
await asyncio.gather(cp.start(), cp.send_boot_notification(), cp.send_heartbeart(), cp.send_start_transaction(), cp.send_stop_transaction(), cp.on_clear_cache() )


Some refactoring and cleanup

The titles of the commits are a good indicator of the changes.

Pull Request Test Coverage Report for Build 269

98 of 113 (86.73%)  changed or added relevant lines in 17 files are covered.
2 unchanged lines in 2 files lost coverage.
Overall coverage increased (+0.1%) to 84.232%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

browse/domain/metadata.py
10
11
90.91%

browse/factory.py
2
4
50.0%

browse/controllers/abs_page/init.py
33
45
73.33%

Files with Coverage Reduction
New Missed Lines
%

browse/filters.py
1
98.57%

browse/controllers/abs_page/init.py
1
78.85%

Totals

Change from base Build 250:
0.1%

Covered Lines:
2687

Relevant Lines:
3190

💛  - Coveralls


Add link to ARM Template for attaching disks to an already existing VM

As issue title I think this should have a link to an ARM Template for adding a new Disk to an existing VM

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

ID: 4dd4a5e2-c630-2702-ac7c-15004b541161
Version Independent ID: f64d7493-0278-de95-a16e-c11369f74c55
Content: Attach a data disk to a Windows VM in Azure by using PowerShell
Content Source: articles/virtual-machines/windows/attach-disk-ps.md
Service: virtual-machines-windows
GitHub Login: @cynthn
Microsoft Alias: cynthn

Thanks for the feedback! We are currently investigating and will update you shortly.

@kilasuit this specific guide is talking about attaching a disk using PowerShell. And the next guide down on the list is using the portal. So adding a link to using a template would not make much sense in this specific doc.
We do have some samples you can follow to attach a disk using an ARM template though
https://docs.microsoft.com/en-us/azure/virtual-machines/windows/using-managed-disks-template-deployments
https://github.com/Azure/azure-quickstart-templates/tree/master/101-vm-multiple-data-disk
@cynthn we might want to consider adding another section in the TOC for ARM though. That way we have PowerShell, Portal, ARM and maybe another for CLI.
Thoughts?

@cynthn ping :)

@kilasuit I will assign to the doc author to review and see if we can get a section for ARM templates added to the list

@cynthn a raw file should be more than enough if context around this is added to the document


Update apiDefinition.swagger.json

When submitting a connector, please make sure that you follow the requirements below, otherwise your PR might be rejected. We want to make you have a well-built connector, a smooth certification experience, and your users are happy :)

[ ] I attest that the connector works and I verified by deploying and testing all the operations.
[ ] I attest that I have added detailed descriptions for all operations and parameters in the swagger file.
[ ] I attest that I have added response schemas to my actions, unless the response schema is dynamic.
[ ] I validated the swagger file, apiDefinition.swagger.json, by running paconn validate command.
[ ] If this is a certified connector, I confirm that apiProperties.json has a valid brand color and doesn't use an invalid brand color, #007ee5 or #ffffff. If this is an independent publisher connector, I confirm that I am not submitting a connector icon.

If you are an Independent Publisher, you must also attest to the following to ensure a smooth publishing process:

[ ] I have named this PR after the pattern of "Connector Name (Independent Publisher)" ex: HubSpot Marketing (Independent Publisher)
[ ] Within this PR markdown file, I have pasted screenshots that show: 3 unique operations (actions/triggers) working within a Flow. This can be in one flow or part of multiple flows. For each one of those flows, I have pasted in screenshots of the Flow succeeding.
[ ] Within this PR markdown file, I have pasted in a screenshot from the Test operations section within the Custom Connector UI.
[ ] If the connector uses OAuth, I have provided detailed steps on how to create an app in the readme.md.

It can be part of a different PR so we can move forward.
[Visit Billhighway]
Raaj Jeeth
VP, Product Development
Phone:<PHONE_NUMBER>
[https://cdn.billhighway.com/images/bh-gb+signature/facebook.png]https://www.facebook.com/impexium[https://cdn.billhighway.com/images/bh-gb+signature/twitter.png]https://twitter.com/impexium[https://cdn.billhighway.com/images/bh-gb+signature/linkedin.png]https://www.linkedin.com/company/impexium[https://cdn.billhighway.com/images/bh-gb+signature/rss.png]https://www.impexium.com/
From: William Llanos @.>
Sent: Tuesday, November 2, 2021 4:43 PM
To: RjImpx/PowerPlatformConnectors @.>
Cc: Raaj Jeeth @.>; Mention @.>
Subject: Re: [RjImpx/PowerPlatformConnectors] Update apiDefinition.swagger.json (PR #17)
[EXTERNAL] This message originated outside of Billhighway/Greekbill/Impexium.
@LordLydon commented on this pull request.

In certified-connectors/Impexium/apiDefinition.swagger.jsonhttps://github.com/RjImpx/PowerPlatformConnectors/pull/17#discussion_r741447418:

     "Organizations"

   ],

   "responses": {

     "200": {

       "description": "Success",

       "schema": {

         "$ref": "#/definitions/OrganizationData"

       }

     }

   },

   "summary": "List All Organizations",

   "description": "List All Organizations",

   "operationId": "List-All-Organizations",

   "parameters": [

     {

       "name": "Page Number",

@RjImpxhttps://github.com/RjImpx, is this going to be sent as part of a different PR, or should we wait until "List all Organizations" is ready to merge PR?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/RjImpx/PowerPlatformConnectors/pull/17#discussion_r741447418, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ARLDTJ7RUTNWJOBOZ5TENRDUKBEMPANCNFSM5G5XSPHA.
Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Actions(5):
Get Committee Members by ID or Code
Find Members (Individuals) by First and Last Name
Add/Update address to Individual
Add Email to Individual
List All organizations


added task to run in parallel with deploy-cluster to clean useless clusters

Description:
This PR added a new task which will run in parallel with deploy-cluster to clean any hypershift cluster that's older than 1hr

/retest

@xinredhat You'll most likely have to rebase against the latest main for the CI to pass.


Pull request for Jest Testing 2

In this milestone, we implemented the following changes:

Used jest framework for testing.
Created a test file for a file containing the following functions:

A function for editing the task description.
A function for updating an item's 'completed' status.
The "Clear all completed" function.

Hello,
Thank you for the immediate response, I think you need to check the
checkbox.test.is file not the utilityFUnctions.test.js file because that is
where the code for editing is. Thank you!
On Fri, 7 Oct 2022 at 18:46, Alexander @.***> wrote:

@.**** requested changes on this pull request.
Hi Team 👋🏾 ,
Good job so far!
There are some issues that you still need to work on to go to the next
project but you are almost there!
Required Changes ♻
Check the comments under the review.
Optional suggestions
Every comment with the [OPTIONAL] prefix is not crucial enough to stop
the approval of this PR. However, I strongly recommend you to take them
into account as they can make your code better.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something
is not 100% clear.
Please, remember to tag me in your question so I can receive the
notification.
Please, do not open a new Pull Request for re-reviews. You should use the
same Pull Request submitted for the first review, either valid or invalid
unless it is requested otherwise.
As described in the Code reviews limits policy
https://microverse.zendesk.com/hc/en-us/articles/1500004088561 you have a
limited number of reviews per project (check the exact number in your
Dashboard). If you think that the code review was not fair, you can request
a second opinion using this form https://airtable.com/shrQAqnBwek5a0O0s.
In src/module/utilityFunctions.test.js
https://github.com/Daphineatim/To-do-list/pull/6#discussion_r990227733:

@jest-environment jsdom

*/

+import Task from './Task.js';
+import { displayContent, removeTask } from './utilityFunctions.js';

+const Tasks = new Task();

+describe('Test add and displayContent method, and local storage', () => {

window.localStorage = Storage.prototype;

test('Add task', () => {

Tasks.add('Test');

document.body.innerHTML = `

`;

displayContent();

expect(Tasks.TaskObject).toHaveLength(1);

});

test('test for local storage', () => {

JSON.parse(localStorage.getItem('TASKS_LIST'));

expect(localStorage).toHaveLength(1);

});

+});
currently these test cases are not available and are mandatory for the
completion of this project

the function for editing the task description.
the function for updating an item's 'completed' status.

—
Reply to this email directly, view it on GitHub
https://github.com/Daphineatim/To-do-list/pull/6#pullrequestreview-1134750571,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AXG27TZ6BBJRED7ZTQEYNILWCBAW5ANCNFSM6AAAAAAQ7VROVM
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


RUMM-2995: Handle NDK crashes considering the dynamic feature registration

What does this PR do?
This update brings back NDK crash submission, which was not working during the dynamic nature of feature registration.
Now we will check what is the feature registered via registerFeature call, and if it is RUM or Logs, then we will proceed with the crash data submission to the relevant channel.
Also this PR makes a bit of change in the data preparation flow - now deserialization happens at the prepareData call (it was handled only in handleNdkCrash before), which should be fine, because deserializers are simple and everything needed should be ready by the time deserialization is performed.
Review checklist (to be filled by reviewers)

[ ] Feature or bugfix MUST have appropriate tests (unit, integration, e2e)
[ ] Make sure you discussed the feature or bugfix with the maintaining team in an Issue
[ ] Make sure each commit and the PR mention the Issue number (cf the CONTRIBUTING doc)

Codecov Report

Merging #1341 (fc7924e) into feature/sdkv2 (a34ded3) will increase coverage by 0.12%.
The diff coverage is 89.39%.

@@                Coverage Diff                @@
##           feature/sdkv2    #1341      +/-   ##
=================================================
+ Coverage          81.69%   81.81%   +0.12%
=================================================
  Files                373      374       +1
  Lines              13159    13176      +17
  Branches            2201     2208       +7
=================================================
+ Hits               10749    10779      +30
+ Misses              1761     1751      -10
+ Partials             649      646       -3

Impacted Files
Coverage Δ

.../com/datadog/android/ndk/DatadogNdkCrashHandler.kt
77.09% <87.72%> (-1.14%)
:arrow_down:

.../kotlin/com/datadog/android/ndk/NdkCrashHandler.kt
100.00% <100.00%> (ø)

.../kotlin/com/datadog/android/v2/core/DatadogCore.kt
83.91% <100.00%> (-0.02%)
:arrow_down:

... and 10 files with indirect coverage changes


v1.3 backports 2019-05-14

#7955 -- test: replace guestbook test docker image (@aanm)

Once this PR is merged, you can update the PR labels via:
$ for pr in 7955; do contrib/backporting/set-labels.py $pr done 1.3; done

This change is

test-docs-please

test-me-please

test-missed-k8s

test-docs-please

test-me-please

test-missed-k8s

test-missed-k8s

test-me-please

test-missed-k8s

test-missed-k8s

test-me-please

test-missed-k8s

test-docs-please

test-me-please

test-missed-k8s

test-me-please

test-missed-k8s

test-me-please

test-missed-k8s

test-missed-k8s

test-me-please

Closing in favor of #8157


Added Diagram

Feel free to reference diagram where you'd like

@kdenhartog Feel free to edit as necessary, figured a diagram might be useful for all of this


workbench.editor.untitled.hint migration is buggy

I have a setting "workbench.editor.untitled.hint": "hidden" in my settings. Everytime I reload, I see a setting "workbench.editor.empty.hint": "hidden" being added. This keeps on happening, the old setting is never removed.

Not sure if this should be a candidate.
@sandy081 does this code look right to you? Or does migration also need to remove the old setting?
https://github.com/microsoft/vscode/blob/60562530f063f305fd601e76a80c81690d502142/src/vs/workbench/contrib/codeEditor/browser/emptyTextEditorHint/emptyTextEditorHint.ts#L41-L53

@joyceerhl If you want to remove the old setting you should explicitly mention that in the migration like below
key: 'workbench.editor.untitled.hint',
		migrateFn: (value, _accessor) => ([
			[emptyTextEditorHintSetting, { value }],
			['workbench.editor.untitled.hint', { value: undefined }],
		])

Can the migration function be made in a way that people do not forget this?


Remove xtend dependency

This isn't needed in Node v4 anymore. Removes 1 dependency!
Inspired by @nolanlawson's tweet:
https://twitter.com/nolanlawson/status/766275330403205122

Note: this is a breaking change so I will publish it as a major version.

2.0.0

Excellent!


Give scripts all IP addresses

Currently if there is more than one interface (openstack port) on a single network only the first interfaces's IP address is available to the scripts as $network_name.   If there is more than one subnet associated with a particular network (i.e. IPv4 and IPv6) openstack assigns IP addresses from both but the value of $network_name in the scripts is randomly assigned between the two.
Propose having a new variable $network_name_ips that contains all of the IP addresses assigned on that network.  Additionally propose that it include the interface number (if assigned in the vnfd.json file) and the subnet name.

closed due to inactivity


Azure Bot Service returns expired access tokens if auth is revoked

(I don't think this is an SDK bug... if there's a better place for this issue, please help me direct it there.)
Describe the bug
Azure Bot Service manages your OAuth access tokens, including refreshing them. But if a user manually revokes authorization from your app, once your access token expires, Azure Bot Service continues giving you the same (now expired) access token.
To Reproduce
Steps to reproduce the behavior:

Follow the Azure Bot Service authentication docs and the bot authentication sample to set up a bot that authorizes against AAD.
Run the bot and log in. Ensure that your access token is valid.
Go to https://myapps.microsoft.com and revoke access by clicking on your AAD app and choosing "Remove".
Wait until your access token expires, based on the exp claim. Likely 1 hour, but it's good to wait a bit longer in case there's leeway on the expiration time.
Talk to your bot again. Notice that you still get an access token and that it's the same token as before.
Try using the access token to access a resource such as Microsoft Graph. You should get a 401 Unauthorized with the error message "Access token has expired."

Expected behavior
I expected Azure Bot Service to realize that the token can't be refreshed, and reset its internal state such that OAuthPrompt (and probably adapter.getUserToken()) no longer gives an access token, allowing me to re-prompt the user to auth.
[bug]

Thanks for the comment. Indeed the component we have in Azure Bot Service to do the token refreshes still returns potentially expired tokens (i.e. there is nothing in the SDK we can change). Until that is changed, the proper behavior is something like:
Get the token
Try to use the token
If you get a 401/403 response (forbidden or unauthorized), you sign the user out with the API call and have them sign back in with a new OAuthCard.

@Jeffders Is there somewhere to track issues for the token component of Azure Bot Service? Or Azure Bot Service in general?

This is tracked here.


Could you upload this plugin to NPM?

In order to use with webpack module bundle, could you upload this plugin to NPM?
Thanks in advance.

Hi,
I just uploaded the plugin to npm. Is this all you need? Can you use it with webpack now?

Thank you so much. It works like a charm. :)


init: store downstream packaging files in .distro/ instead of fedora/

When we create source-git repos using the init command, we store downstream packaging content in folder called fedora/.
We concluded recently that it should be renamed to .distro to be agnostic.

https://github.com/packit/packit/commit/0f36a807a0f80e441bd812fad1c21ed0042c93b2
me no be very good with search


+1 icon

Description

Rec Room icon addition.
Icons addition information

Added

Rec Room (com.AgainstGravity.RecRoom)

The stroke width and color are correctly selected, as well as the naming. The rest is not.
I recommend reading the comment above and evaluating how the icons that have already been added are made.

In the new version of the icon, you decided to use the wrong stroke width. Also, the icon size remained unsuitable.
I fixed it for you.


AttributeError  : Traceback (most recent call last) Cell In[13], line 1 ----> 1 st.alignment.group_pca([slice1,slice2], pca_key='X_pca')       3 slice1, slice2  AttributeError: module 'spateo.alignment' has no attribute 'group_pca'

AttributeError                            Traceback (most recent call last)
Cell In[13], line 1
----> 1 st.alignment.group_pca([slice1,slice2], pca_key='X_pca')
3 slice1, slice2
AttributeError: module 'spateo.alignment' has no attribute 'group_pca'
follow your guide book in <Basic Usage of Spateo Alignment for 2D Slices>,with the same code whats the reason?

solved? envounted same issue. so I run: pip install spateo-release, it is he most recent release of Spateo?

No solutions
from iPhone
------------------ Original ------------------
From: summer-4-DESIGH @.>
Date: Fri,Dec 13,2024 7:34 PM
To: aristoteleo/spateo-release @.>
Cc: zhoulab_qin @.>, Author @.>
Subject: Re: [aristoteleo/spateo-release] AttributeError  : Traceback (mostrecent call last) Cell In[13], line 1 ----> 1st.alignment.group_pca([slice1,slice2], pca_key='X_pca')       3 slice1,slice2  AttributeError: module 'spateo.alignment' has no attribute 'group_pca'(Issue #294)
solved? envounted same issue. so I run: pip install spateo-release, it is he most recent release of Spateo?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>


Example code beautifulsoup_crawler.py not working on Windows due to encoding assumptions.

Example code beautifulsoup_crawler.py is scraping from: https://crawlee.dev
This page contains special symbols, for example:  "🏗"
Such symbols are scraped and using context.push_data saved to a file.
Writing to a file is done without specific encoding:
https://github.com/apify/crawlee-python/blob/3c3dfe8cdbf3b72c46018914a2b6479b31c5dd99/src/crawlee/memory_storage_client/_dataset_client.py#L353
And in such case some system default encoding is used.
See following mini-example to summarize the issue:
import locale
locale.getpreferredencoding() # "cp1252" on Windows, "utf-8" on Linux
"🏗".encode("utf-8") # Works fine.
"🏗".encode("cp1252") # UnicodeEncodeError

To reproduce the issue with example file, just run it on Windows machine where locale.getpreferredencoding() returns "cp1252".
This exposes bigger issue, that the code is making assumptions about the encoding of the extracted data, that might not be always correct or relying on some system default encoding, which can be different in different environments. Hard-coding utf-8 would be probably fastest simple fix when it comes to writing to a file. But what if user wants to use a different encoding?
Unexpected encodings could also create other issues when creating soup without from_encoding optional argument. https://www.crummy.com/software/BeautifulSoup/bs4/doc/#encodings
One way to solve the issue would be to give users some option to specify recommended encodings that should be used by the system when needed. Example solution draft that handles only encoding when writing to a file to fix the code example on Windows:
https://github.com/Pijukatel/crawlee-python/pull/1
(I am not familiar with the code base, so this is my naive proposal. There are probably more suitable ways how to address this, but this is just an example solution that would give user the option to deal with such issues.)

Hi, thanks for the report, we should probably just use UTF-8 explicitly. I do not think exposing this to the user as an attribute is necessary, as it is more of an internal thing.


Add support for Braavos accounts

Both cairo0 and cairo2 accounts are open source and available here:
https://github.com/myBraavos/braavos-account-cairo

Hey, thanks for the suggestion! Do you use starknet-hardhat-plugin?


Add setting to control who can remove members from a group.

First commit is a minor refactor.
Second commit is to fix UI to allow user to join the group if they can add members.
Third commit is to refactor node tests.
Fourth commit adds the new setting in backend.
Fifth commit is to use the new setting to check new permission in backend.
Sixth commit is to add UI for new setting and use the new setting to check permissions in webapp.
Seventh commit is to update help docs.

Fixes: #25943

Screenshots and screen captures:

Self-review checklist

[ ] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[ ] Explains differences from previous plans (e.g., issue description).
[ ] Highlights technical choices and bugs encountered.
[ ] Calls out remaining decisions and concerns.
[ ] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[ ] Each commit is a coherent idea.
[ ] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[ ] Visual appearance of the changes.
[ ] Responsiveness and internationalization.
[ ] Strings and tooltips.
[ ] End-to-end functionality of buttons, interactions and flows.
[ ] Corner cases, error conditions, and easily imagined bugs.

This is great, merged, thanks @sahil839! There's a few things we could follow up on.


Exposure & contrast controls

It could be useful to include exposure and contrast controls as part of the application.
Did have a quick look to see if there is an existing widget that could be included, but I didn't find one.

I've been using this app for teaching astronomy, using a CCD eye-piece in my camera. Which is brilliant. This suffers that bright object (Jupiter) dominate and you can't see dim objects (Jupiter's Moons) in the same shot. I would dearly love the ability to push/pull the image a few stops to try and expose more details. (That or Dynamic Range.) I don't know if the API allows this, but it would give this app a whole new audience.


I2S error with M5Core2 V0.1.5 but not with V0.1.3

Describe the bug
With M5Core2 V0.1.5 library, accessing I2S produces the error messages:
E (1208) I2S: i2s_driver_uninstall(2048): I2S port 0 has not installed
E (1245) I2S: register I2S object to platform failed
E (1245) I2S: i2s_read(2265): RX mode is not enabled
but no error with M5Core2 V0.1.3 library and the sketch runs properly
To reproduce
// sketch provided below
#include <M5Core2.h>          // include M5Core2 and
#include <driver/i2s.h>         //    ESP32 I2S libraries
const int bufferLen = 1024;       // DMA buffer size (samples)
int N = 1, yData[320], yBase = 120;
int minY = 0, maxY = 2000;        // min and max values M5GO
//int minY = -600, maxY = 600;       // min and max values M5Stack
void setup()
{
M5.begin();
M5.Lcd.fillScreen(BLACK);       // initialise display
M5.Lcd.setTextSize(1);
M5.Lcd.setTextColor(WHITE, BLACK);
M5.Lcd.drawString("PDM mic", 50, 0, 4);
for (int i=0; i<320; i++) yData[i] = yBase;
I2Sconfig();            // configure I2S
pinConfig();            //    and GPIO pins
}
void I2Sconfig()            // function to configure I2S
{
i2s_config_t i2s_config = {       // receive and PDM modes
.mode = (i2s_mode_t)(I2S_MODE_MASTER | I2S_MODE_RX | I2S_MODE_PDM),
.sample_rate = 44100,         // sample frequency
.bits_per_sample = I2S_BITS_PER_SAMPLE_16BIT, // 16-bit sampling
.channel_format = I2S_CHANNEL_FMT_ONLY_RIGHT, // mono channel sampling
.communication_format = I2S_COMM_FORMAT_STAND_I2S,
.intr_alloc_flags = ESP_INTR_FLAG_LEVEL1,
.dma_buf_count = 2,           // DMA buffers
.dma_buf_len = bufferLen          // DMA buffer length
};
i2s_driver_install(I2S_NUM_0, &i2s_config, 0, NULL);
}
void pinConfig()            // function to configure I2S pins
{
i2s_pin_config_t pin_config = {
.bck_io_num = I2S_PIN_NO_CHANGE,    // bit clock frequency
.ws_io_num = 0,         // word select (left /right) clock
.data_out_num = I2S_PIN_NO_CHANGE,    // data output
.data_in_num = 34         // data input
};
i2s_set_pin(I2S_NUM_0, &pin_config);
}
void loop()
{
wave();             // call wave function
}
void wave()       // function to read DMA buffer and display waveform
{
size_t bits = 0;
int16_t buffer[bufferLen] = {0};      // define and read I2S data buffer
i2s_read(I2S_NUM_0, &buffer, sizeof(buffer), &bits, portMAX_DELAY);
int bytes = bits / 8;         // convert bits to bytes
if(bytes > 0)
{
for (int i=0; i<bytes; i=i+N)
{
M5.Lcd.drawLine(0, yData[0], 1, yData[1], BLACK); // overwrite value
for (int j=1; j<320; j++) yData[j-1] = yData[j];     // shift one position
int temp = constrain(buffer[i], minY, maxY);   // constrain buffer values
yData[319] = map(temp, minY, maxY, 30, 240);      // map to LCD height
for (int j=1; j<319; j++)
{
M5.Lcd.drawLine(j, yData[j-1], j+1, yData[j], BLACK); // overwrite and
M5.Lcd.drawLine(j, yData[j],   j+1, yData[j+1], RED); // draw new line
}
}
}
M5.update();
}
Expected behavior
M5Core2 screen displays waveform of sound received by built-in microphone
Screenshots

Environment

OS:  Windows 10
IDE &IDE Version:    Arduino 1.8.19
Repository Version:

Additional context
No response
Issue checklist

[X] I searched for previous reports in the issue tracker
[X] My report contains all necessary details

The issue arose from an error message displayed with the M5Core2 V0.1.8 library.
The V1.0.7, V1.0.5 and V1.0.3 libraries were separately loaded and the problem was "resolved" by the V1.0.3 library.
The latest ESP32 Board Manager V2.0.14 is installed

This is due to the addition of Speaker introduced in V0.1.4, which causes I2S-related processing in M5.begin.
Calling begin in this way can suppress I2S-related processing.

);

Results in V0.1.9

Thanks for the clarification.


Bundle h2 db

As a user I'd like to have usual easy way to start h2 db instead of running as embedded within admin server. This is needed for ambari work, not to use mem based and when we eventually get support running multiple admins.

All you really need is a one line command to start the TCP server:
java -cp h2*.jar org.h2.tools.Server -tcp -tcpAllowOthers -tcpPort 19092

Then the database files are created based on the URL used to connect like:
jdbc:h2://<host>:19092//var/lib/h2/dataflow

So, not sure we need anything more elaborate for this.

We might also consider using the following options to lock things down a bit:
-baseDir /var/lib/h2 -ifExists

but that would require that we create the database file during installation if it doesn't exist.


Experiment with BERT model always stopped

Describe the bug
I'm trying to use the pre-trained BERT model for text classification as mentioned here https://uber.github.io/ludwig/user_guide/#bert-encoder . I wanted to check if I'm doing something wrong. Thanks in advance for your time!
To Reproduce
Steps to reproduce the behavior:

I use the following command to run an experiment ludwig experiment --experiment_name bert-uncaselarge --data_csv /path/to/mydataset.csv --model_definition_file /my/model_definition_bert.yaml
Here is the YAM file  'http://linkedvocabs.org/dataset/model_definition_bert.yaml'
You can find the log after running the command here 'http://linkedvocabs.org/dataset/log-runningBert.txt
See the output error `2020-02-28 14:57:28.712274: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
2020-02-28 14:57:28.756657: I tensorflow/core/platform/profile_utils/cpu_utils.cc:94] CPU Frequency:<PHONE_NUMBER> Hz
2020-02-28 14:57:28.756922: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x2ad4840 executing computations on platform Host. Devices:
2020-02-28 14:57:28.756960: I tensorflow/compiler/xla/service/service.cc:175]   StreamExecutor device (0): ,
2020-02-28 14:57:32.899945: W tensorflow/compiler/jit/mark_for_compilation_pass.cc:1412] (One-time warning): Not using XLA:CPU for cluster because envvar TF_XLA_FLAGS=--tf_xla_cpu_global_jit was not set.  If you want XLA:CPU, either set that envvar, or use experimental_jit_scope to enable XLA:CPU.  To confirm that XLA is active, pass --vmodule=xla_compilation_cache=1 (as a proper command-line flag, not via TF_XLA_FLAGS) or set the envvar XLA_FLAGS=--xla_hlo_profile.

Epoch   1
Training:   0% 0/40 [00:00<?, ?it/s]^C`
Expected behavior
I expect to have the experiment finishing with the results like with the other encoder I've tested so far.
Environment (please complete the following information):

OS:  Google Colab
Python version: v3.6
Ludwig version: v0.2.1

That doesn't look like an error to me, It looks like regular tensorflow session setup output.
At the end I see a ^C which sounds like you interrupted the training manually. What is the error again?
If you interrupt it manually, i suspect you did it because it was hanging, but as you are trying to train a BERT model on CPU, it must really well be the case that it is actually trainin,g but it's just really slow (because BERT is huge). So if you stopped it manually, could you please just wait (potentially several minutes) and see if the progress bar starts to report something? Also, please reduce the batch_size to something small, like 8, to see updates on the progress bar more often.

Hi @w4nderlust Thanks for your answer. I didn't stop the process. I just realized it stopped in my Colab notebook. I'll restart the training with a smaller size and we'll see if I'm lucky.

Sure keep me posted. In colab you can have a GPU which will make training much faster.

I've tried twice the experiments. The last one with GPU set up disconnected from Colab after only the first epoch as below: (Note: I've tried to follow this advice to prevent colab from disconnecting using this function at https://medium.com/@shivamrawat_756/how-to-prevent-google-colab-from-disconnecting-717b88a128c0)
Epoch   1
Training: 100% 632/632 [2:34:03<00:00, 13.46s/it]
Evaluation train: 100% 632/632 [1:15:18<00:00,  6.72s/it]
Evaluation vali : 100% 84/84 [09:59<00:00,  6.70s/it]
Evaluation test : 100% 180/180 [21:30<00:00,  6.61s/it]
Took 4h 20m 51.1860s
╒═════════╤════════╤════════════╤═════════════╕
│ label   │   loss │   accuracy │   hits_at_k │
╞═════════╪════════╪════════════╪═════════════╡
│ train   │ 0.7492 │     0.4945 │      1.0000 │
├─────────┼────────┼────────────┼─────────────┤
│ vali    │ 0.7315 │     0.5224 │      1.0000 │
├─────────┼────────┼────────────┼─────────────┤
│ test    │ 0.7488 │     0.4955 │      1.0000 │
╘═════════╧════════╧════════════╧═════════════╛
It's strange because if I use a fine-tune model directly from Tensorflow, it takes less than 20 minutes for the training. So, yes from my original question, you gave me the right answer. I don't know if I'll finish this experiment. I'm eager to hear from others who used this model. Thanks.

@gatemezing I don't have enough information to be able to help you a lot, if you want me to try to help you you have to make it reproducible for me.
I can only have suspitions, and here the suspicion is that you are not running on a GPU, but without seeing the code and the output of the training is really difficult for me to confirm that or not.
based on this part of the output you previously provided
tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
2020-02-28 14:57:28.756657: I tensorflow/core/platform/profile_utils/cpu_utils.cc:94] CPU Frequency:<PHONE_NUMBER> Hz
2020-02-28 14:57:28.756922: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x2ad4840 executing computations on platform Host. Devices:
2020-02-28 14:57:28.756960: I tensorflow/compiler/xla/service/service.cc:175] StreamExecutor device (0): ,
2020-02-28 14:57:32.899945: W tensorflow/compiler/jit/mark_for_compilation_pass.cc:1412] (One-time warning): Not using XLA:CPU for cluster because envvar TF_XLA_FLAGS=--tf_xla_cpu_global_jit was not set. If you want XLA:CPU, either set that envvar, or use experimental_jit_scope to enable XLA:CPU. To confirm that XLA is active, pass --vmodule=xla_compilation_cache=1 (as a proper command-line flag, not via TF_XLA_FLAGS) or set the envvar XLA_FLAGS=--xla_hlo_profile.

It looks like you are running on CPU and not on GPU. I image you installed tensorflow instead of tensorflow-gpu, but without knowing more I can't really tell unfortunately. Can you share the colab or a version of with just a small subset of the data?

@w4nderlust I just realized what you meant by using GPU. I was setting it from the execution menu of Colab, without actually testing in the code. The output looks like this now (full version)
2020-03-07 10:04:43.508251: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 AVX512F FMA 2020-03-07 10:04:43.512800: I tensorflow/core/platform/profile_utils/cpu_utils.cc:94] CPU Frequency:<PHONE_NUMBER> Hz 2020-03-07 10:04:43.512975: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x1bb3d40 initialized for platform Host (this does not guarantee that XLA will be used). Devices: 2020-03-07 10:04:43.513003: I tensorflow/compiler/xla/service/service.cc:176]   StreamExecutor device (0): Host, Default Version 2020-03-07 10:04:43.514730: I tensorflow/stream_executor/platform/default/dso_loader.cc:44] Successfully opened dynamic library libcuda.so.1 2020-03-07 10:04:43.598801: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:983] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero 2020-03-07 10:04:43.599575: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0xb73ee00 initialized for platform CUDA (this does not guarantee that XLA will be used). Devices: 2020-03-07 10:04:43.599606: I tensorflow/compiler/xla/service/service.cc:176]   StreamExecutor device (0): Tesla P100-PCIE-16GB, Compute Capability 6.0 2020-03-07 10:04:43.599781: I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:983] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero 2020-03-07 10:04:43.600280: I tensorflow/core/common_runtime/gpu/gpu_device.cc:1639] Found device 0 with properties:  name: Tesla P100-PCIE-16GB major: 6 minor: 0 memoryClockRate(GHz): 1.3285
So, it seems now it is working.
For reproducibility, Please find the files at the following location:

The dataset for testing used in the experiment at http://linkedvocabs.org/dataset/ludwig/claims-spacy-train.csv
The code used in Colab at http://linkedvocabs.org/dataset/ludwig/ludwig_bert_Claims.ipynb. Note that I use Google drive to store the Bert models.
The model at http://linkedvocabs.org/dataset/ludwig/model_definition_bert.yaml

Please, let me know if you need more details. Thanks in advance for your time.

This sounds good to me. You cna play around with the hyperparameters of the output feature and with the the learning rate and other pars of training parameters to squeeze more performance. As the loss is abouncing quite a bit, consider reducing the learning rate and increasing the number of epochs and the patience.
Anyway, I consider the issue solved, so I'm closing this. If you would be so kind to write a final post summarizing what you had to do to make training work on GPU on Colab that would be a great contribution so that other people with the same issue can take advantage of your experience.

Any idea still how can we connect a GPU while training on Colab, can't find much resources arund it.

This may help you: https://colab.research.google.com/notebooks/gpu.ipynb

I tried to check the GPU available in my environment and found the following:

The command executes without any issues but still the GPU is not utilized (iter/s =  1.1). Sorry to bother but do you have any idea on what can cause this issue?

Before starting the training of epoch 1, it should print a bunch of tensorflow log information, can you poste it here for me to see? make sue to use --logging_level debug.
Something that looks like:
╒══════════╕
│ TRAINING │
╘══════════╛

2020-06-24 16:16:20.551069: I tensorflow/core/platform/cpu_feature_guard.cc:142] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
2020-06-24 16:16:20.580768: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x7f8a24ed7800 initialized for platform Host (this does not guarantee that XLA will be used). Devices:
2020-06-24 16:16:20.580790: I tensorflow/compiler/xla/service/service.cc:176]   StreamExecutor device (0): Host, Default Version

Epoch    1

Looked into it and it looks like in Colab they removed the GPU option for TesnorFlow 1:
%tensorflow_version 1.x
import tensorflow as tf
device_name = tf.test.gpu_device_name()
if device_name != '/device:GPU:0':
  raise SystemError('GPU device not found')
print('Found GPU at: {}'.format(device_name))

Even if you try to uninstall and reinstall manually, it still doesn't work:
! pip uninstall -y tensorflow
! pip install -y tensorflow-gpu==1.15.2
import tensorflow as tf
device_name = tf.test.gpu_device_name()
if device_name != '/device:GPU:0':
  raise SystemError('GPU device not found')
print('Found GPU at: {}'.format(device_name))

The problem is with Colab, not with Ludwig.
Anyway, the next version of Ludwig will work with TF2 so there will not be any problem in this regard anymore.

As suggested, Ludwig works completely fine with GPU in Colab with TensorFlow v1. Just making a minor amendment to the above suggestion worked for me while manually uninstalling and installing TensorFlow v1.15: !pip install tensorflow-gpu==1.15 Perhaps this might be because Colab doesn't come pre-installed with tensorflow-gpu v1.15.

As suggested, Ludwig works completely fine with GPU in Colab with TensorFlow v1. Just making a minor amendment to the above suggestion worked for me while manually uninstalling and installing TensorFlow v1.15: !pip install tensorflow-gpu==1.15 Perhaps this might be because Colab doesn't come pre-installed with tensorflow-gpu v1.15.

Testing your suggestion out. The following code did not work for me on colab:
!pip install tensorflow-gpu==1.15.2
import tensorflow as tf
device_name = tf.test.gpu_device_name()
if device_name != '/device:GPU:0':
  raise SystemError('GPU device not found')
print('Found GPU at: {}'.format(device_name))

with the following error:
---------------------------------------------------------------------------

SystemError                               Traceback (most recent call last)

<ipython-input-2-a2d81cd9fa85> in <module>()
      3 device_name = tf.test.gpu_device_name()
      4 if device_name != '/device:GPU:0':
----> 5   raise SystemError('GPU device not found')
      6 print('Found GPU at: {}'.format(device_name))

SystemError: GPU device not found

Can you please share either the content of a setup cell that works or an entire example Colab? That would be very useful.

After switching to GPU in colab (in the menu Runtime > Change runtime type > None to GPU) and installing Ludwig, simply follow as suggested previously also:
!pip install ludwig
!pip uninstall -y tensorflow
!pip install tensorflow-gpu==1.15.3

import tensorflow as tf
device_name = tf.test.gpu_device_name()
if device_name != '/device:GPU:0':
  raise SystemError('GPU device not found')
print('Found GPU at: {}'.format(device_name))

There is no need of using %tensorflow_version 1.x in the code cell while importing tf as installing Ludwig simply uninstalls the pre-installed tf v2.2.x and installs the v1.15.3 (cpu), making the latter default tf version to be used which further changes to be tf v1.15.3 (gpu) on manual installation :)


None not usable in jitclass method?

To test for empty argument, testing for an empty array (the commented out code), DOES work.  But testing against a None value does not.  Docs say None is supported, but isn't clear.  It mentions optional, but optional seems not usable in jitclass method, because @jit decorator isn't usable.
import numpy as np
from numba import jitclass          # import the decorator
from numba import float64, complex128, intc, none    # import the types

spec = [
    ('M', intc),               # a simple scalar field
    ('zeta', float64),
    ('omega_n', float64),
    ('sum1s', complex128[:]),
    ('sum2s', complex128[:]),
    ('k', float64),
    ('aT', float64),
]

@jitclass(spec)
class _lms_2nd (object):
    def __init__ (self, M, omega_n, zeta):
        self.M = M
        self.zeta = zeta
        self.omega_n = omega_n
        self.sum1s = np.zeros (M, dtype=complex128)
        self.sum2s = np.zeros (M, dtype=complex128)
        self.k = 2 * zeta * omega_n
        self.aT = omega_n / (2 * zeta)

    def call (self, A, y1, y2, y3, omegas, zetas):
        print (omegas is not None)
        print (zetas is not None)
        L = A.shape[0]
        M = self.M
        sum2s = self.sum2s
        sum1s = self.sum1s
        zout = np.empty (L-M, dtype=complex128)
        for i in range (M//2, L-M//2-1+1):
            z = zout[i-M//2] = y1[i] - np.dot (sum2s, y2[i-(M//2):i+(M//2)+1])

            # if zetas.shape[0] != 0 or omegas.shape[0] != 0:
            #     new_zeta = zetas[i-M//2] if zetas.shape[0] != 0 else self.zeta
            #     new_omega = omegas[i-M//2] if omegas.shape[0] != 0 else self.omega_n
            #     if new_omega != self.omega_n or new_zeta != self.zeta:
            #         self.reset (new_omega, new_zeta);

            if zetas is not None or omegas is not None:
                if zetas is not None:
                    new_zeta = zetas[i-M//2]
                else:
                    new_zeta = self.zeta

                new_omega = omegas[i-M//2] if omegas is not None else self.omega_n
                if new_omega != self.omega_n or new_zeta != self.zeta:
                    self.reset (new_omega, new_zeta);

            for j in range (M):
                err = z * np.conj (y3[i-M//2+j])
                filter1_out = self.k * err + sum1s[j];
                sum1s[j] += err * self.k * self.aT;
                sum2s[j] += filter1_out;

        return zout;

    def reset (self, _omega_n, _zeta):
        newk = 2 * _zeta * _omega_n;
        newaT = _omega_n / (2 * _zeta);
        self.sum1s *= (newk * newaT) / (self.k * self.aT);
        self.omega_n = _omega_n;
        self.zeta = _zeta;
        self.k = newk;
        self.aT = newaT;

    @property
    def alpha(self):
        return self.sum2s

class lms_2nd(object):
    def __init__(self, *args, **kwargs):
        self.lms = _lms_2nd (*args, **kwargs)
    def __call__(self, A, y1, y2, y3, omegas=None, zetas=None):
        return self.lms.call (A, y1, y2, y3, omegas, zetas)
    def __getattr__(self, attr):
        return getattr(self.lms, attr)

Cannot reproduce as of 0.45. Assuming fixed, if this is not the case please reopen the issue with new information. Many thanks.


fix #226

Pull Request Test Coverage Report for Build 303

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

Totals

Change from base Build 302:
0.0%

Covered Lines:
91

Relevant Lines:
99

💛  - Coveralls


Roll-20-like functionality

Their script: https://ghostbin.com/paste/2n67m
Reference documentation: https://wiki.roll20.net/Dice_Reference
I think it is possible to adopt some of the elements of Roll20 to make DXJS more powerful

Hey thanks for the  comment.
I've not seen the library before so i will tak a look :)
Any specific functionality or just a general observation? if there are specific things we can make tickets for each one individually to keep track of them.

@mog13 here is the breakdown of the functions

[ ] addition, subtraction, multiplication, division, modulo, exponentiation

Abilities are expanded (meaning the definition of the ability is placed in the formula anywhere that ability appears).
Macros are expanded, including nested macros up to 99 levels deep.
Variables are substituted
Roll queries are executed (the player making the roll is asked to provide a value for each query, and that value is substituted in where the roll query appears in the formula)
All previous steps are repeated until there are no longer any unresolved abilities, macros, variables, or queries. This allows for nesting (e.g. putting an attribute in a macro).
Inline rolls are executed, starting with the most deeply nested inline roll working upward. The overall result of the inline roll is substituted in place where it appeared in the formula.
The remaining roll is executed: first, dice are rolled for any dice (e.g. "2d6" is rolled; including any special dice such as dropped or exploding), then the result of that roll is substituted into the formula. Next, floor() and ceil() functions are executed. Finally, the entire remaining formula is evaluated, including observing proper math order of operations (parentheses first, then multiplication/division, then addition/subtraction).

[ ] All Types Of Dice

[ ] Basic Roll of NdX
[ ] Fate/Fudge Roll NdF
[ ] Computed Dice Roll (N+Y)dX or Nd(X+Y)

[ ] All Roll Modifiers

[ ] Target Number / Successes (B,F) - CP
[ ] Failures (B,F) - fCP
[ ] Exploding Dice (B,F) !CP
[ ] Compounding Dice (B,F) !!CP
[ ] Penetrating Dice (B,F) !pCP
[ ] Dice Matching m and mt
[ ] Keep / Drop Dice (B,F) khN or klN or dhN dlN
[ ] Rerolling Dice (B,F) rCP
[ ] Sorting Dice (B,F) sa or sd
[ ] Order of Operations for Modifiers

Exploding, Compounding, Penetrating, Rerolls
These are applied while the dice are still rolling. imagine that you roll some exploding 6d6 on your table and the instant one of them settles as a 6 another die is rolled
Keep, Drop, Success, Failure, Sorting
These are applied after all of the dice have "settled" and all of the result values are known.

[ ] Grouped Rolls
[ ]  Grouped Roll Modifiers

[ ] Keep / Drop khN or klN or dhN or dlN
[ ]  Target Number / Successes (B,F) CP
[ ] Failures (B,F) fCP

https://github.com/GreenImp/rpg-dice-roller

@DonaldTsang awesome thanks. Looking through the list some of them are already supported. I will go through and create issues for the ones that arn't.


Training setup

Under this issue, I want to talk about the training setup.
Training setup:

To be mostly derived from the original paper and "Accurate, Large Minibatch SGD: Training ImageNet in 1 Hour".
In case of ambiguity, pycls will be used as source of truth.
As discussed, I'll be using factory fit() and eval() methods.

I will add the actual training setup from these resources in this issue soon. I'll also start working on a basic train.py according to that. I think finalizing the training setup and script will not take much time, since most things will be same as the sources mentioned above.
Uploading to TF Hub and GitHub:
If I understand correctly, I must use SavedModel format for TFHub and .h5 format for GitHub. I intend to use a separate bucket to store all models.
Just for reference, following are the milestones for weeks 5 to 8:

Training and achieving SOTA accuracy (Week 5,6,7)
a. Training of 4 models on GCP
b. Tweaking and retraining models (if necessary) for SOTA results
c. Deploying SavedModel to TensorFlow Hub and checkpoint files to GitHub

Cleaning up code and documentation (Week 8)
a. Documentation and tutorial on using RegNet

Off the shelf inference
Demonstration of Transfer learning

b. Optimizing code if possible

LGTM.
eval should evaluate() right?
I would suggest using 1% samples from the actual training set and reporting results on the validation sets since we won't have the results for the test sets in a timely manner. This is also a standard practice these days. Refer here.

If I understand correctly, I must use SavedModel format for TFHub and .h5 format for GitHub. I intend to use a separate bucket to store all models.

Yup, you are correct. Also using a separate bucket sounds like a good plan to me. I'd suggest using the ModelCheckpoint callback with descriptive identifiers like epoch and validation loss. Recently, .keras has also become a legitimate format to serialize weights. But .h5 is the most widely used one so, we can stick to using it.

@sayakpaul
The model is gtg, barring the one-liner about scaling the images.  I'll need to do that in a separate branch, since temp_dev_model is not up to date with main. I'll open a PR for the one liner asap.

@AdityaKane2001 I cloned your repo and checked this branch out. After that when I tried running the code below, it errored out:
from regnety.regnety.models import RegNetY
import tensorflow as tf
import regnety.regnety.utils.model_utils as mutil

tf.keras.backend.clear_session()
model = RegNetY('200mf')

print(model.inputs)
model.compile(loss = 'categorical_crossentropy', optimizer = 'sgd', metrics = 'accuracy')
print(mutil.get_flops(model))

Error:
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-5-9662fdb3bcb4> in <module>()
      6
      7 tf.keras.backend.clear_session()
----> 8 model = RegNetY('200mf')
      9
     10 print(model.inputs)

/content/regnety/regnety/models/model.py in RegNetY(flops, input_shape)
     70     flops = flops
     71     config = get_model_config(flops)
---> 72     model = _get_model_with_config(config)
     73     return model

TypeError: _get_model_with_config() missing 1 required positional argument: 'userdef_input_shape'

Could you please try that again? I've updated the code. It was because of the profiler, the script ran on None input shape.
Here is the expected output:
[<KerasTensor: shape=(None, 224, 224, 3) dtype=float32 (created by layer 'input_1')>]
WARNING:tensorflow:From /usr/local/lib/python3.7/dist-packages/tensorflow/python/profiler/internal/flops_registry.py:142: tensor_shape_from_node_def_name (from tensorflow.python.framework.graph_util_impl) is deprecated and will be removed in a future version.
Instructions for updating:
Use `tf.compat.v1.graph_util.tensor_shape_from_node_def_name`

=========================Options=============================
-max_depth                  10000
-min_bytes                  0
-min_peak_bytes             0
-min_residual_bytes         0
-min_output_bytes           0
-min_micros                 0
-min_accelerator_micros     0
-min_cpu_micros             0
-min_params                 0
-min_float_ops              1
-min_occurrence             0
-step                       -1
-order_by                   float_ops
-account_type_regexes       .*
-start_name_regexes         .*
-trim_name_regexes
-show_name_regexes          .*
-hide_name_regexes
-account_displayed_op_only  true
-select                     float_ops
-output                     stdout:

==================Model Analysis Report======================

Doc:
scope: The nodes in the model graph are organized by their names, which is hierarchical like filesystem.
flops: Number of float operations. Note: Please read the implementation for the math behind it.

 Any idea how can we do that?

I added some comments to the codeshare link (codeshare.io/gLLo40).
I would say a .h5 format is optional, but it would be good to provide the
original checkpoint on GitHub. Since you're providing it with your code,
it's reasonable to set save_weights_only=True. It may also be a good idea
to use save_best_only=True in case your model overfits, and you can
reload this version before exporting a final SavedModel for TF Hub.
On Tue, Jul 13, 2021 at 12:01 PM Sayak Paul @.***>
wrote:

@AdityaKane2001 https://github.com/AdityaKane2001 I cloned your repo
and checked this branch out. After that when I tried running the code
below, it errored out:
from regnety.regnety.models import RegNetYimport tensorflow as tfimport regnety.regnety.utils.model_utils as mutil
tf.keras.backend.clear_session()model = RegNetY('200mf')
print(model.inputs)model.compile(loss = 'categorical_crossentropy', optimizer = 'sgd', metrics = 'accuracy')print(mutil.get_flops(model))
Error:

TypeError                                 Traceback (most recent call last)
 in ()
6
7 tf.keras.backend.clear_session()
----> 8 model = RegNetY('200mf')
9
10 print(model.inputs)
/content/regnety/regnety/models/model.py in RegNetY(flops, input_shape)
70     flops = flops
71     config = get_model_config(flops)
---> 72     model = _get_model_with_config(config)
73     return model
TypeError: _get_model_with_config() missing 1 required positional argument: 'userdef_input_shape'
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/AdityaKane2001/regnety/issues/7#issuecomment-878952003,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABZIOLE7THDAHT5HLCIZIQLTXQFGJANCNFSM5AGRJLBA
.

save_best_only=True @MorganR it won't then allow to have granularity in the checkpoints. In this case, we are serializing the checkpoints with descriptive information in their names (which are validation loss and the epochs).

Makes sense. I recommend adding an additional callback then that just saves
the best weights, and loading that checkpoint before exporting the model
for Hub. That way you have a lightweight "best model" checkpoint ready, but
also the full history if you need to dig into it and export or test
something else.
On Tue, 13 Jul 2021, 12:50 Sayak Paul, @.***> wrote:

save_best_only=True @MorganR https://github.com/MorganR it won't then
allow to have granularity in the checkpoints. In this case, we are
serializing the checkpoints with descriptive information in their names
(which are validation loss and the epochs).
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/AdityaKane2001/regnety/issues/7#issuecomment-878984444,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABZIOLDM7T6ZDUGPAABKY33TXQK7NANCNFSM5AGRJLBA
.

PS.
--/400.31m flops This number is twice the expected amount. I have manually halved it in the code, due to this.

Well, can we then print out that halved number? The verbosity is inevitable with the v1 profiler I guess.
I agree with @MorganR's suggestion here.

Well, can we then print out that halved number?

Yes it is at the end. I'll add some context to it.
======================End of Report==========================
(200154721, 0)

Yes, let's add context to it and also unit.

@sayakpaul
Since we're going to take 1% training set for validation, how can we take out 1% (in our case equivalent to 12 TFRecords) of the data? More specifically, I have added ds = ds.repeat() in the input pipeline. So, will ds.take() and ds.skip() work as expected? Or should I just use drop_remainder=True when batching?

If we execute .take() before .repeat() then it should do the job.

Closing this as #10 is has further conversation.


[Bug] [Api] Prometheus failed to start due to port occupation, but the status of the component on the page is normally displayed in green

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
Prometheus端口占用，平台未能检测到Prometheus异常
What you expected to happen
检测到Prometheus端口占用，发出告警
How to reproduce
Prometheus虽然端口占用为成功启动，但Prometheus的校验接口仍能正常访问，平台因此任务Prometheus是正常的
Anything else
No response
Version
dev
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

I apply for this issue


K8SPG-594 delete custom extensions from installed

CHANGE DESCRIPTION
Problem:
We need to delete custom extensions not only from available but from installed too. If we deleted a custom extension from  available extensions it doesn't work correctly so anyway we should delete it.
Cause:
Short explanation of the root cause of the issue if applicable.
Solution:
As solution, custom annotations with the list of installed custom extensions were added.
Under each reconciliation extension either added to annotations (if it's new one and were deleted in custom extensions in CR or if it was deleted from custom extensions we should delete in from DB and from annotations too )
CHECKLIST
Jira

[ ] Is the Jira ticket created and referenced properly?
[ ] Does the Jira ticket have the proper statuses for documentation (Needs Doc) and QA (Needs QA)?
[ ] Does the Jira ticket link to the proper milestone (Fix Version field)?

Tests

[ ] Is an E2E test/test case added for the new feature/change?
[ ] Are unit tests added where appropriate?

Config/Logging/Testability

[ ] Are all needed new/changed options added to default YAML files?
[ ] Are all needed new/changed options added to the Helm Chart?
[ ] Did we add proper logging messages for operator actions?
[ ] Did we ensure compatibility with the previous version or cluster upgrade process?
[ ] Does the change support oldest and newest supported PG version?
[ ] Does the change support oldest and newest supported Kubernetes version?


The minCompileSdk (30) specified in a dependency's AAR metadata is greater than this module's compileSdkVersion (android-29)

Describe the bug
I'm trying to update the package for a project because of https://github.com/stripe/stripe-react-native/issues/578, so I'm bumping from "@stripe/stripe-react-native": "^0.1.4" to "@stripe/stripe-react-native": "^0.2.2".
My project passes the requirements however:

classpath("com.android.tools.build:gradle:4.1.0")

  buildToolsVersion = "29.0.2"
  minSdkVersion = 21
  compileSdkVersion = 29
  targetSdkVersion = 29

Stripe requirements
Android
Android 5.0 (API level 21) and above
Android gradle plugin 4.x and above
Or the README file is not updated with higher requirements for Android for v0.2.2?
When I try to build the app, on the newest version I'm getting this error
> Task :app:checkDevelopmentDebugAarMetadata FAILED

Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/6.5/userguide/command_line_interface.html#sec:command_line_warnings
58 actionable tasks: 54 executed, 4 up-to-date

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkDevelopmentDebugAarMetadata'.
> Multiple task action failures occurred:
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.ui:ui-tooling:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/c190b22d01faa613cb2cea22e95d9199/jetified-ui-tooling-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.activity:activity-compose:1.3.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/2d64ca1ebcf8b190edf0634f82aa2095/jetified-activity-compose-1.3.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.activity:activity-ktx:1.3.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/2d0f75103af319a65cb07879f1059baa/jetified-activity-ktx-1.3.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.material:material:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/cb1ea19e3a0ff0cad7ce44e3d48502a2/jetified-material-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.material:material-ripple:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/8b43324800327205cd34f26894b46eba/jetified-material-ripple-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.foundation:foundation:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/6d42365d783ba874a566a1d5db1820c8/jetified-foundation-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.material:material-icons-extended:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/ad1be8e7f59bc2bdf5fdd3d8340ba35b/jetified-material-icons-extended-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.material:material-icons-core:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/0d4029b2acb5ffad4baf481f02927041/jetified-material-icons-core-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.runtime:runtime-livedata:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/a736907bb98c68d5f7af2f0eeb88ec55/jetified-runtime-livedata-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.ui:ui-tooling-data:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/e8d11ed0d6f12bc2fb5af01a901ccc1b/jetified-ui-tooling-data-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.animation:animation:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/d636cdf64662e0e628e225910c172e15/jetified-animation-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.foundation:foundation-layout:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/47ecc646f4c01cbc27a16f272cc78643/jetified-foundation-layout-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.animation:animation-core:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/0e33fc87a12c29fbcc91f08fec02ff09/jetified-animation-core-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.ui:ui:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/03c57652fd7da7e423252fe2f64d95fe/jetified-ui-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.ui:ui-text:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/020893374a3a033a512145d3d79013e3/jetified-ui-text-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.activity:activity:1.3.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/ebdac0733d12aa9a8d939e127dd04f96/jetified-activity-1.3.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.runtime:runtime-saveable:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/0db8d2c06ee995b447e0e5f8d2bd94d1/jetified-runtime-saveable-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.ui:ui-graphics:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/4aed12a2094e6eff4eb696aaa242172b/jetified-ui-graphics-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.ui:ui-unit:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/071a7a40ed957ef9205c930050f5e966/jetified-ui-unit-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.ui:ui-geometry:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/2ae34c473b2ee41a0f41691fbfe8d0f8/jetified-ui-geometry-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.ui:ui-tooling-preview:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/b3ebe8be2b313c634351ddbaf84f8fa4/jetified-ui-tooling-preview-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.runtime:runtime:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/fe8cda599faac593ce85f21f228c5652/jetified-runtime-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.profileinstaller:profileinstaller:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/e18830752ede759f0115684626983cc1/jetified-profileinstaller-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (30) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-29).
        Dependency: androidx.compose.ui:ui-util:1.0.0-rc02.
        AAR metadata file: /Users/ilyagruzhevski/.gradle/caches/transforms-2/files-2.1/2c25a1145b5f5ff9c5a18026dc0882e1/jetified-ui-util-1.0.0-rc02/META-INF/com/android/build/gradle/aar-metadata.properties.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 19s

To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
The app should build and launch with v0.2.2.
Smartphone (please complete the following information):

Device: sdk_gphone_x86 Android Emulator
OS: Android
Version 11
React Native v0.63.4

Additional context
Add any other context about the problem here.

A bit late here but in case this helps someone else, I had the same issue and solved it by bumping the compileSdkVersion and targetSdkVersion.
From:
compileSdkVersion = 29
targetSdkVersion = 29

To:
compileSdkVersion = 30
targetSdkVersion = 30


Typos for Chapter 4

Here are some typos for Chapter 4. The (page, line) references are made to metamath.pdf dated 2019-05-24.
Thanks @david-a-wheeler ; take them with a grain of salt, maybe some suggestions are not so good after all...
Suggestion: Add a note somewhere in the book for non-native English speakers, reading something like:
A note on the English language for non-native speakers: the operation of "substituting y for x" in "x = 2" yields "y = 2". This is equivalently termed "substituting x with y" or "replacing x with y" or "replacing x by y".
[I might have gotten this wrong... which shows that such a remark could be useful. Also, you will certainly find a better wording than me.]
109: bound-variable clashes --> disjoint variable clashes (?)
110: the 94 printable ASCII characters --> the 94 printable ASCII characters other than the space
110: the 93 printable standard ASCII characters other than $ --> the 93 printable ASCII characters other than the space and $
110: white space characters --> whitespace characters (might need to allow hyphenation)
111,2: $( begins --> The auxiliary keyword token $( begins [in order to avoid beginning a sentence with a symbol]
111,3: the 94 printable characters and white space --> the 95 printable characters (including space)
111: As is any reference to the top-level file. --> As is any reference to the top-level file (to avoid loops).
111,-11: ${ begins --> The keyword token ${ begins [to avoid beginning a sentence with a symbol]
111,-4: $. token : the space looks too big (several times; might need a \ in the TeX)
111-112: tiny remark: when in boldface, the symbols $v, $c etc... are not in typewriter font.
112: A $a --> An $a (?)
114: strings of printable characters --> strings of nonspace printable characters (?)
121: when free variables --> when the free variables
122: the worse that will happen --> the worst that could happen (?)
123: "contact me if interested": is it possible to give a pointer to these axioms?
123: a $e --> an $e (?) similarly for "$a" and "$f" ?
127: The third property... The last property: there are only three bullet points, not four, and furthermore none is about $d... not clear.
129: whenever assertion mp --> whenever Assertion mp
129: start and end of a frame --> start and end of an extended frame
130: sequence of frames --> sequence of extended frames
130: I noticed that both "inside" and "inside of" are used in the book. I thought "inside" (without "of", unless "inside" is a noun) was the formal way, but I may be wrong.
133: Suggestion: an assertion label is like an operation --> an assertion label is like an operation (more precisely, an $n$-ary operation when the assertion has $n$ $e-hypotheses).
133: Suggestion: Example 1,2,2,+,+: it might be clearer to have two different operations, e.g.: the input sequence $2, 1, 2, +, \times$ results in $2, 3, \times$ which results in~6.
134: The proof of statement wnew --> The proof of Statement wnew (capitalization)
135: hypothesis wp --> Hypothesis wp
135: it checks to see that the contents of stack location 1 is the same as the math symbol sequence in the $p statement --> it checks to see that the stack contains exactly one element and that this element is the same as the math symbol sequence in the $p statement
136: /essential : isn't it the default behavior now ? (and above, should have used /all)
137: between any two tokens in a source file --> between any two tokens (or at the beginning or end) in a source file
139: applied from --> applied to
147: self reference --> self-reference
148, 1: upper case letters --> uppercase letters
148: recoverable --> fixable (?)
151, footnote: df-oadd has changed (as a result of the definition df-mpt); df-rfg has been replaced by df-rdg, itself using df-recs

Excellent! I have set aside this afternoon to turn your comments into changes in the TeX file. I'll post replies in the relevant issue if I disagree with something, so we can discuss it.

Suggestion: Add a note somewhere in the book for non-native English speakers, reading something like: A note on the English language for non-native speakers: the operation of "substituting y for x" in "x = 2" yields "y = 2". This is equivalently termed "substituting x with y" or "replacing x with y" or "replacing x by y". [I might have gotten this wrong... which shows that such a remark could be useful. Also, you will certainly find a better wording than me.]

It doesn't matter if the reader is a native English speaker or not.  Even natives can be confused by the similar terminology.  So I've modified the text explaining df-sb to note the different wordings, and I've added a little "trick" that I find useful in helping to remember the correct order.

110: the 94 printable ASCII characters --> the 94 printable ASCII characters other than the space
110: the 93 printable standard ASCII characters other than $ --> the 93 printable ASCII characters other than the space and $

The space character is indeed considered a "printable" character per:

https://www.juniper.net/documentation/en_US/idp5.1/topics/reference/general/intrusion-detection-prevention-custom-attack-object-extended-ascii.html
https://en.wikipedia.org/wiki/ASCII#Printable_characters

I'll try to make that clearer.

111-112: tiny remark: when in boldface, the symbols $v, $c etc... are not in typewriter font.

The default typewriter fonts of LaTeX don't support that.  Discussion here: https://tex.stackexchange.com/questions/215482/how-do-i-get-texttt-with-bold-face-in-latex
It's possible to fix but not clear it's worth it.

A $a --> An $a (?)

I'm going to leave this as-is.  The rule is what the "next sound" is.  I pronounce this as "A dollar-A", so "A" is correct.

122: the worse that will happen --> the worst that could happen (?)

Not there any more.

123: "contact me if interested": is it possible to give a pointer to these axioms?

@nmegill - Is there one? Could we make such a page & give it a URL? It could be expanded later.

134: The proof of statement wnew --> The proof of Statement wnew (capitalization)
135: hypothesis wp --> Hypothesis wp

I'm not doing that in general.  In English you capitalize a proper name unless there's a compelling reason to do otherwise.  The name isn't "Statement X", it's just X.  In our case the names are defined as being lowercase, and the case matters, so I'm not making them uppercase either.

123: "contact me if interested": is it possible to give a pointer to these axioms?

@nmegill - Is there one? Could we make such a page & give it a URL? It could be expanded later.

@david-a-wheeler You can take out "contact me if interested" and use the URL:
http://us.metamath.org/mpeuni/mmzfcnd.html

151, footnote: df-oadd has changed (as a result of the definition df-mpt); df-rfg has been replaced by df-rdg, itself using df-recs

I think the footnote about df-oadd needs to move into the body.  The use of seq, etc., is key to how set.mm works, and rec doesn't otherwise appear in the literature.  We also need to make it clear that Metamath could do it the traditional way.  This will need to be its own pull request.

151, footnote: df-oadd has changed (as a result of the definition df-mpt); df-rfg has been replaced by df-rdg, itself using df-recs

Resolving this took a lot more time.  I ended up moving text out of the footnote & expanding it.  Hopefully Norm will like the result!

@david-a-wheeler You can take out "contact me if interested" and use the URL:
http://us.metamath.org/mpeuni/mmzfcnd.html

Done.

I think everything in this issue has been turned into a pull request.


Support for bolding in array field

Hi Vespa team,
I realized that whenever I have array<string> field and the bolding enabled e.g.
        field texts type array<string> {
            indexing: index | summary
            bolding: on
        }

The bolding will not works and give this error:
Error loading model: 'bolding: on' for non-text field 'texts' (datatype Array<string> (code: -1486737430)) is not allowed

Can bolding supported for array<string>? Thank you

summary: dynamic is also currently not supported for array<string> fields. This feature request covers support for that as well.

Support for this has been added in 8.53.21.
Updated documentation:
https://docs.vespa.ai/en/reference/schema-reference.html#bolding
https://docs.vespa.ai/en/reference/schema-reference.html#summary
New system tests:
https://github.com/vespa-engine/system-test/blob/master/tests/search/bolding/bolding_array.rb
https://github.com/vespa-engine/system-test/blob/master/tests/search/dynteaser/dynteaser_array.rb


Move stray functions into utility modules

Depends on #34
This moves stray functions to utility modules and removes duplicates.

We definitely don't want to commit the dist directory.

It's for testing the client removal in an easy way :) I'll remove it once this comes out of draft ;)


RUVm (postprocessing method to reduce batch effects)

As with other types of microarray platforms, technical artifacts are a concern, including background fluorescence, dye-bias from the use of two color channels, bias caused by type I/II probe design, and batch effects. Several approaches and pipelines have been developed, either targeting a single issue or designed to address multiple biases through a combination of methods. We evaluate the effect of combining separate approaches to improve signal processing.

https://bioconductor.org/packages/release/bioc/vignettes/missMethyl/inst/doc/missMethyl.html#introduction
I found a new-ish method, RUVm, for removing unwanted variance between batches using negative controls. This works well after NOOB.
Should I plan to port this from R into methylprep?
https://cran.r-project.org/web/packages/ruv/ruv.pdf

Let’s hold off for now on RUVm for now. We may need to optimize our pre-processing pipeline, and need a strategy for empirically evaluating the utility of each step.

paper ref: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4652745/


Port sensorapp app to SCIONLab nextversion

The SCIONLab update is coming. We need to port all existing SCION applications so they build and run with the next version.
Typically you will need to register and get a user AS from the testing coordinator at
http://http://scionlabtestbed.inf.ethz.ch:8080
And use it to run and test the application you are trying to port.
Another possibility is, of course, to install the next version in your local machine. Just check out the scionlab_nextversion branch from our repository, and build it following the standard procedure.
This issue deals with porting sensorapp.

Closed in https://github.com/netsec-ethz/scion-apps/pull/35.