Build error

I have not changed anything on my code, but now I am getting this error when I try to build the app.
I was able to build the same app two day ago withou any issues.
Any idea what might be causing this issue?

Task :app:checkDebugDuplicateClasses FAILED

FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':app:checkDebugDuplicateClasses'.

1 exception was raised by workers:
java.lang.RuntimeException: Duplicate class com.google.android.gms.internal.measurement.zzbu found in modules jetified-play-services-measurement-18.0.3-runtime.jar (com.google.android.gms:play-services-measurement:18.0.3) and jetified-play-services-measurement-sdk-api-20.1.2-runtime.jar (com.google.android.gms:play-services-measurement-sdk-api:20.1.2)

Glad that version works. It might be conflicting transitive dependencies with the 21.0.0 version of AdMob SDK and another Google-owned SDK you have in your project.
We'll post updates if we hear / find more info relating this from our partners.

Hi @thomasmso.
Any idea why I am facing this issue when trying to add Pangle ad network as mediation?
It works fine for others ad networks like Admob and Meta.
FAILURE: Build failed with an exception.

What went wrong:
Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'.

Could not resolve all task dependencies for configuration ':app:debugCompileClasspath'.
Could not find com.pangle.global:ads-sdk:<IP_ADDRESS>.
Required by:
project :app > com.applovin.mediation:bytedance-adapter:<IP_ADDRESS>.0

Unfortunately, I'm not sure. I havn't seen this issue before. It's worth integrating their SDK independently to see if the issue persists, to isolate the cause from the adapter.


[Quest] Login Error while app runs in the background after a while (~1 hour)

Describe the bug
Error coming from the account manager when the app fails to create the account. You get a notification once the issue is triggered when you try to resume the app
To Reproduce
Steps to reproduce the behaviour:

Login
Get access token
Get UUID
Get the practitioner details endpoint to get details from HAPI
The successfully authenticate user
Then error occurs

Expected behaviour
Add error handling for this and redirect users to either enter a PIN or authenticate themselves afresh using the username and password
Screenshots

Smartphone (please complete the following information):

Device: Emulator and Actual Device, Pixel 4a
Android version: API 33, Android 13

Related ticket

#2283

Relatedly here is a reported log
{
    "resourceType": "OperationOutcome",
    "text": {
        "status": "generated",
        "div": "

Operation Outcome

ERROR	[]
HAPI-0435: Server method returned resource of type[PractitionerDetails] with no ID specified (IResource#setId(IdDt) must be called)
	\n\t\t\t
\n\t\t
\n\t
"
    },
    "issue": [
        {
            "severity": "error",
            "code": "processing",
            "diagnostics": "HAPI-0435: Server method returned resource of type[PractitionerDetails] with no ID specified (IResource#setId(IdDt) must be called)"
        }
    ]
}

Related Server side fix https://github.com/opensrp/hapi-fhir-opensrp-extensions/pull/42

@f-odhiambo the corresponding patch was merged to main as part of PR#2287. If your QA can confirm it now works we can close this ticket

@f-odhiambo the corresponding client side patch was merged to main as part of PR#2287. If your QA can confirm it now works we can close this ticket

Seems to have been resolved , closing for now


pq: got 1 parameters but the statement requires 0 after upgrade from v1.23.4 to v1.23.5

I started getting a migrator error after upgrading the gorm.io/gorm v1.23.4 to gorm.io/gorm v1.23.5
Note: The issue happens when I use sql.Open with Gorm on Second Run. So first migration works fine but when I rerun the same migration it throws errorl
2022/06/09 17:20:05 /Users/khanakia/D1/www/projects/gamerapp/gamerapp_go/vendor/gorm.io/driver/postgres/migrator.go:484 pq: got 1 parameters but the statement requires 0

package main

import (
	"database/sql"
	"fmt"

	"gorm.io/driver/postgres"
	"gorm.io/gorm"
	"gorm.io/gorm/logger"
)

type Student struct {
	ID     string `json:"id" gorm:"type:varchar(36);primaryKey;"`
	UserID string `json:"userId" gorm:"type:varchar(36)"`
}

func main() {

	dbDSN := "user=postgres password=root host=localhost dbname=gorm port=5432 sslmode=disable TimeZone=Asia/Shanghai"

	dbSql, err := sql.Open("postgres", dbDSN)
	if err != nil {
		panic(err)
	}

	db, err := gorm.Open(postgres.New(postgres.Config{
		Conn: dbSql,
	}), &gorm.Config{
		Logger: logger.Default.LogMode(logger.Info),
	})

	fmt.Println(err)

	db.AutoMigrate(
		&Student{},
	)
}

Playground Link : https://github.com/khanakia/gorm_automigrate_error

https://github.com/go-gorm/postgres is a driver for https://github.com/jackc/pgx , not for https://github.com/lib/pq .
You should use like this
db, err := gorm.Open(postgres.New(postgres.Config{
  DSN: "host=localhost user=gorm password=gorm dbname=gorm port=9920 sslmode=disable TimeZone=Asia/Shanghai", // data source name, refer https://github.com/jackc/pgx
  PreferSimpleProtocol: true, // disables implicit prepared statement usage. By default pgx automatically uses the extended protocol
}), &gorm.Config{})

Or use stdlib to open sql.DB
config, err := pgx.ParseConfig(dbDSN)
if err != nil {
  return
}

dbSql := stdlib.OpenDB(*config)

db, err := gorm.Open(postgres.New(postgres.Config{
  Conn: dbSql,
}), &gorm.Config{})

Still have issues with this solution.
We need to use the driver cloudsqlpostgres from github.com/GoogleCloudPlatform/cloudsql-proxy/proxy/dialers/postgres cause the database is hosted in Google Cloud and we access it with CouldSql-Proxy.
PreferSimpleProtocol: true didn't work. Had to downgrade to v1.3.5

I think the root of the problem is that gorm is no longer compatible with lib/pq，i try switch to pgx ,it's work now

I had the same problem when I switched from lib/pq to pgx to upgrade gorm 22.3 to 25.2, anyone know what to do about it?
type GeoPoint struct { 	Lng float64 json:"lng"	Lat float64json:"lat"	Alt float64json:"alt"}
`
// Value converts the given Geometry4326 struct into EWKB such that it can be stored in a
// database. Implements Valuer interface for use with database operations.
func (g GeoPoint) Value() (driver.Value, error) {
var x = geom.NewPoint(geom.XYZ).MustSetCoords(geom.Coord{g.Lng, g.Lat, g.Alt}).SetSRID(4326)
data, err := ewkb.Marshal(x, binary.LittleEndian)
if err != nil {
return nil, err
}
return data, nil
}
// Scan converts the hexadecimal representation of geometry into the given Geometry4326
// struct. Implements Scanner interface for use with database operations.
func (g *GeoPoint) Scan(value interface{}) error {
data, err := hex.DecodeString(string(value.([]byte)))
if err != nil {
return err
}
var px, err1 = ewkb.Unmarshal(data)
if err1 != nil {
return err1
}
var geomt = px.(geom.T)
var geomp = geomt.(*geom.Point)
g.Lng = geomp.Coords()[0]
g.Lat = geomp.Coords()[1]
g.Alt = geomp.Coords()[2]
return nil
} 	"github.com/twpayne/go-geom"
"github.com/twpayne/go-geom/encoding/ewkb"`
The code snippet involved in the above


Fix a few nil bugs

User.erase_user was neglecting to deal with herbaria whose personal_user pointed to the dead user.  Wrote a test to expose this behavior and fixed it.
Similarly, something was happening in name merges that was causing name_descriptions to get orphaned.  It looked like it should have worked.  I don't know why it wasn't.  But it was old code and messy and could be reduced to a single line, so I did that.  Hopefully this version is more robust?
Lastly, I have noticed a ton of bogus requests for /images/facebook_icon.png, each of which causes rails to throw a routing error.  Not a hugely expensive drain on resources, but wholly unnecessary.  I just created an empty static file in /public/images/facebook_icon.png.  This should cause nginx to serve the (empty) file instead of punting the request to rails.

Coverage decreased (-0.005%) to 93.027% when pulling dc725bfa5f8e81d0c8c63d87c3ae373205724352 on fix-delete-user-bug into 672e02aa8d6d8fc7c18ffab168a9f9316fd647fa on master.


cricket-pytest Windows 10 "Unhandled Exception: Python.Runtime.PythonException: SystemExit : 1"

Hi I'm trying to launch criket-pytest on Win10 system and facing the following issue (tried with the empty tests folder and with the tests within it):
(3.7.2) C:\Projects\venvs\tests>cricket-pytest
[Winforms] Not implemented: TextInput.set_font()
[Winforms] Not implemented: TextInput.set_font()
[Winforms] Not implemented: TextInput.set_font()
[Winforms] Not implemented: TextInput.set_font()
[Winforms] Not implemented: TextInput.set_font()
[Winforms] Not implemented: TextInput.set_font()
[Winforms] Not implemented: TextInput.set_font()
[Winforms] Not implemented: TextInput.set_font()
[Winforms] Not implemented: TextInput.set_font()
[Winforms] Not implemented: TextInput.set_font()
[Winforms] Not implemented: MultilineTextInput.set_placeholder()
[Winforms] Not implemented: MultilineTextInput.set_placeholder()
[Winforms] Not implemented: MultilineTextInput.set_placeholder()
[Winforms] Not implemented: Tree.change_source()
[Winforms] Not implemented: Tree.set_on_select()
[Winforms] Not implemented: Tree.set_on_select()
[Winforms] Not implemented: Tree.change_source()
[Winforms] Not implemented: Tree.set_on_select()
[Winforms] Not implemented: Tree.set_on_select()
[Winforms] Not implemented: OptionContainer.set_on_select()
[Winforms] Not implemented: OptionContainer.set_on_select()

Unhandled Exception: Python.Runtime.PythonException: SystemExit : 1
   at Python.Runtime.Dispatcher.Dispatch(ArrayList args)
   at __System_Threading_ThreadStartDispatcher.Invoke()
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()

I installed pythonnet with
pip install git+https://github.com/pythonnet/pythonnet.git
and then cricket with:
pip install git+https://github.com/pybee/cricket.git
After that I had to fix cricket\view.py on line 14, because I got the following error:
  File "c:\projects\venvs\3.7.2\lib\site-packages\cricket\view.py", line 14, in <module>
    from toga.font import BOLD, SANS_SERIF
ModuleNotFoundError: No module named 'toga.font'

The fix was renaming toga.font to toga.fonts.
System: Windows 10 64bit, Python 3.7.2
(3.7.2) C:\Projects\venvs\tests>pip freeze
cricket==0.3.0.dev1
pythonnet==2.4.0.dev0
toga==0.3.0.dev11
toga-core==0.3.0.dev11
toga-winforms==0.3.0.dev11
travertino==0.1.2

On Windows 7 I was able at least to run the application, but the tests were not loaded (more info in https://github.com/pybee/cricket/issues/77 )
Any help will be highly appreciated because cricket seems to be an excellent tool, but I was able to run it only on MacOS so far which is not enough.

I agree supporting platforms other than macOS would be preferable. We're in the process of migrating Cricket to use Toga (because we've hit the limits of what we can do with Tkinter); but unfortunately, Toga isn't feature complete on Windows and Gtk yet. That's the major reason why Cricket 0.3 has only been released as a development package.


Always print progress bar

Output with --machine-reports --parallel true flags from before:

After this change:

Let me know if this is what we want.

Okay I made quite a few changes @wpietri @dhosterman

Renamed --machine-reports to --json-logs
Regular logging is always printed
CLI progress bars are disabled with --json-logs
Disable modelgauge plugin loading progress bar in cli
Print initial progress json at beginning of execution.
Reverted to using echo instead of logging.info. I originally switching over to logging in the first progress reports PR in order to handle different log levels for machine vs. human callers. This is not relevant now that log statements always need to be printed. Also logging.info did not print to stdout in parallel mode.

I just tested this against the latest changes in modellab and it works great! It's still showing progress bars for the dependency downloads, but that'll require downstream work in modelgauge to fix and doesn't impede using the progress data provided.


Upgrade vendor "git"

Upgrade "git" via the command govendor

LGTM

LGTM

Current coverage is 3.06% (diff: 100%)

Merging #161 into master will increase coverage by 0.02%

@@            master      #161   diff @@
========================================
  Files           33        33
  Lines         8100      8100
  Methods          0         0
  Messages         0         0
  Branches         0         0
========================================
+ Hits           246       248     +2
+ Misses        7834      7833     -1
+ Partials        20        19     -1

Powered by Codecov. Last update b339858...a6c1c3c


Event and Lifecycle spans should not be INFO level

These cause a lot of noise when implementing tracing output:
https://github.com/linebender/druid/blob/94b6ce5308761fba1860cd0f535382a29037f36c/druid/src/window.rs#L288
https://github.com/linebender/druid/blob/dda0073e8d6ec4caf475e8e843c41ad0a1076132/druid/src/core.rs#L418
For example, when I move the mouse across the Window, a tonne of INFO level logs are outputted. I think these should be TRACE due to how noisy they can be. Note: some of the events are indeed TRACE.

Something else that might be useful is to allow the user to pass a tracing level to the debug tracer, e.g. you would do,
AppLauncher::with_window(my_window)
    .log_to_console(LevelFilter::DEBUG)


SPIKE: Design a change to the SEA Log Archive Lifecycle Storage Locations

Describe the issue
We know that the current SEA Log Archive Lifecycle Policies for the Log archive bucket policies are set to 90 days for the immutable log archive bucket.  We wish to increase the storage.
Additional context

The current log archive is set to 90 days for cost reasons.
Cost of log storage is actually driven by several multiplicative inputs, it's a function of

how many logging sources we are keeping, multiplied by

how many project-sets we have (or how many Ministry client applications), multiplied by

how much traffic and activity each of those applications have, with possibly

how much parallelism exists in each teams' CI/CD (linear vs heavily PR-based)

Based on the above, the likelihood of the log archive becoming prohibitively expensive is high
S3 log archive and cloudwatch are governed by policy
Glacier does not provide us the ability to scan but it is a long term investigation backup.
After the logs exit the current log archive, we no longer see them on the dashboard
Curious to see how long the cloudgaurd dashboard persists it's data for the dashboards (unrelated to this ticket)

Definition of done

2 year glacier logs desired (auto-reap after 2 years)
Confirm if the AWS SEA lifecycle config.json is configurable to incorporate a glacier location to place logs after they expire from the current "hot" log archive.
Meet with Ryan J and explain that we want to have a hot log archive that is currently set to 90 days along with a very cold (very cheap, glacier) long term log archive, and that we may even reduce the size of the 90 day archive to 30 days if the 90 day archive grows too large.
Create a solution that can be implemented at the SEA level and pushed upstream for SEA community benefit and so that we don't need to worry about fragility of our implementation through SEA patches.

Prabhu noticed something interesting that there are two log buckets at the moment in LZ2 and one of them doesn't match the lifecycles defined in the config - Ask Ryan about this (Warren has notes on this)

covered by other tickets


how to set cookie with expire time is 1 minutes.

Hello,
this seems to be that kind of question that should be asked over at StackOverflow. Still, your solution is to use cookieService.set() with the expires?: number | Date param. Just use the appropriate Date relative to "now".
Cheers!


gMSA permissions inconsistent?

Hi.
I just compared the permissions provided in this doc for the gMSA account with the defaults:

They are completely different (except one "Create/Delete User objects"). Is the table with permissions wrong? The table should reflect the defaults? Or are these the minimum required rights? Then this should be noted to prevent confusion.
Could you clarify that please?
Best regards
Andreas

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

ID: 6d513d77-4a6d-3032-bb45-4a813a1db4da
Version Independent ID: 47a2b665-91a4-1529-0304-7d20a07db409
Content: Prerequisites for Azure AD Connect cloud sync in Azure AD
Content Source: articles/active-directory/cloud-sync/how-to-prerequisites.md
Service: active-directory
Sub-service: hybrid
GitHub Login: @billmath
Microsoft Alias: billmath

@andreasmarx Thank you for your feedback . We will investigate and update the thread.

Hi. Is ther any update you can provide? Best regards Andreas

Hi @billmath . Is ther any update regarding this? Thanks in advance.


gdx-video

This introduces a video rendering extension that works on both desktop and android. Currently there's no support for iOS and GWT.
By default it renders full-screen. Rendering using a parameter viewport, and/or to a custom mesh is supported.
On default, it does not have a common video codec working on all platforms. Theora video with vorbis audio is supported on Desktop. Android supports all media formats that the native android player on a device supports (an overview of those formats can be found here).  Desktop can be extended to support all codecs supported by ffmpeg by recompiling ffmpeg with different targets; however this may move the license from LGPL to GPL. It may also lead into patent licensing issues. More information on this can be found here. In the future, VP8 might be added to the default ffmpeg compile, since it is royalty free.
Currently, only some licensing issues remain. I want to ask you how this is normally handled for dependencies.

All the code still needs license headers in them. Do you have a tool for this?
Because FFmpeg is licensed with the LGPL (2.1) license, we need to distribute source files with it. We also have to make clear it uses ffmpeg, and have a tutorial on recompiling. I take it that the tutorial can be done on the wiki, but how do you guys distribute licenses/sources for external dependencies? Is there a general structure for this, or should this be done by the user of the extension?

@tjgiggs Because of exams and holidays, I haven't been able to debug your android problem yet. I will try to look into it somewhere this week.
@Tom-Ski  @badlogic Did you guys decide on what to do with the extension? I think it should be done the same as the other extensions (i.e. you guys fork the seperate repository, and add it to the buildserver)?

@Robbiedobbie woops, meant to reply but totally forgot... I can get you started in a repo and on the build server. We can take discussion over structure and setup etc at the repo https://github.com/libgdx/gdx-video


Page 5415 - OnAfterSet

On Page 5415 "Item Avail. by Variant Lines" can we add a new publisher called OnAfterSet.
procedure Set(var NewItem: Record Item; NewAmountType: Option "Net Change","Balance at Date")
begin
    Item.Copy(NewItem);
    PeriodStart := Item.GetRangeMin("Date Filter");
    PeriodEnd := Item.GetRangeMax("Date Filter");
    AmountType := NewAmountType;
    OnAfterSet(Rec,Item,AmountType);         // NEW
    CurrPage.Update(false);
end;

// NEW +
[IntegrationEvent(false, false)]
local procedure OnAfterSet(ItemVariant: Record "Item Variant"; var Item: Record Item; AmountType: Option "Net Change","Balance at Date")
begin
end;
// NEW -

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 an ArrayCypherNode type

With Neo4j you can return a collection of nodes, and to support that in cq would require either an ArrayCypherNode type, or use of the ArrayCypherValue type by modifying the CypherValue type so that it can contain a Node. There's already a CypherNode type in the constants for CypherValue, so I think the latter is possible without breaking the existing API. I think the former is a cleaner solution though. Thoughts?

I'm ok with either solution (or actually, could do both). I sort of stopped short of creating all the different possibilities of things that cypher can generate, because I realized you can do maps of arrays or arrays of arrays in cypher fairly easily. Even in one liners:
RETURN [[1,2],[3]]
```

So my philosophy will be: if you need it, I will merge a PR that supports it. It's unfortunate we can't handle these more generically, but that's just one of the things about go.


Uprev version to 0.15.1

thanks, in future you can probably save a build and push these straight to main.

Sounds good if you're okay with that!


Add public_updated_at metadata to examples

As part of https://trello.com/c/ZWU9N8Bc/414-add-missing-details-to-document-list-for-document-collection-format-medium

This needs rebasing, but 👍


allow partial history exports

e.g. only export the most recent 'n' pages of your history
default will still always be a full export, but this lets me combine multiple partial history exports into a full export, requesting the most recent history page more frequently

added in v0.1.2
FYI @Darion


Configurable SDK providers, debug output, and Godot Engine compatibility.

This pull request introduces the following changes.
New Actions Inputs

sdk-url: Allows the base URL of an SDK repository to be specified. I needed this because the default (joseluisq/macosx-sdks) did not have a 13.0 SDK available. If unspecified, the previous default location will be used.

debug: Optionally allows you to enable osxcross debug output by setting OCDEBUG.

Other Changes

Export OSXCROSS_ROOT in the GITHUB_ENV, enabling support for cross-compilation with Godot Engine (docs).

Closing because I have additional improvements in the works.


🆕 Software Suggestion | TogaSearch (Beta)

Basic Information
Name: TogaSearch (Beta)
Category: Search Engines
URL: https://search.togatech.org/
Description
TogaSearch is a privacy search engine which uses the results of major search engines. TogaTech servers act as a secure proxy, scraping results from Google, removing all of the tracking, and delivering the results back to the user's browser.
Why I am making the suggestion
TogaSearch is a great privacy alternative for users who want to move away from search engines like Google while still retaining the speed and accuracy of leading search algorithms.
My connection with the software
I am the Founder, CEO, and Developer of TogaTech (https://togatech.org/), a company dedicated to creating user-friendly, privacy software for the masses. TogaSearch is one of the sites we created to help achieve this goal.

[x] I will keep the issue up-to-date if something I have said changes or I remember a connection with the software.

Do you plan on releasing the source code at some point?

if isn't open source sorry but is the opposite of privacy respecting

Well, even if the source-code is available somewhere (e.g. on GitHub) you still need to trust the admin that the server actually runs this source-code and not a patched one (Example: https://github.com/signalapp/Signal-Server/commit/3432529f9c018d75774ce89f3207b18051c26fe7#commitcomment-46371609). If you have no way to verify this, open-source or closed-source has no difference (except that you could run your own server if it's properly documented).

@LongJohn-Silver @LorisTecnology @rusty-snake Hello, thanks for expressing your concerns. Our source code is currently closed-source, we may make it open-source in the future, but there's no way to verify that we are actually running that code (so I'm not sure that it would make a huge difference).
As for how you can verify the lack of tracking, if you click search, you can inspect the client-side code (to be sure there are no tracking scripts) and check document.cookie (which should be blank, indicating no cookies). This setup is 1000x better than Google, which has a bunch of cookies under document.cookie as well as the signed in icon at the top right of the search bar (letting you know that they are tying this search back to your account)

thanks for the answer
now it's more clear

@LongJohn-Silver @LorisTecnology @rusty-snake Hello, thanks for expressing your concerns. Our source code is currently closed-source, we may make it open-source in the future, but there's no way to verify that we are actually running that code (so I'm not sure that it would make a huge difference).
As for how you can verify the lack of tracking, if you click search, you can inspect the client-side code (to be sure there are no tracking scripts) and check document.cookie (which should be blank, indicating no cookies). This setup is 1000x better than Google, which has a bunch of cookies under document.cookie as well as the signed in icon at the top right of the search bar (letting you know that they are tying this search back to your account)

Well, for once, people would be able to run multiple instances of the search engine to avoid censorship by governments or to simply provide different experiences, it also gives your project a spirit of openness and transparency, and you would be contributing to the libre software movement as a whole. I just feel there are a ton of close source search engines already there, and it doesn't really make a difference to me to recommend this over DDG for example given that the latter is a much more mature product. I would use a service that has less features if it stands for things I believe, in this case, privacy and libre culture, but if I have to choose between two ideally equal things I would go with the one with most features.
Also, Infinity Search is working on a decentralized search engine that is libre, which may not be mature enough, sure, but in my opinion would be a better ideal than this.
Still, though, this is the opinion of a simple Privacy Tools follower, these words don't have any real decission on whether or not it will be listed, I just hope to make you change your mind because I think it's in the best interest for you, your project and the privacy community.
Cheers!


[Relay] ImportError when running relay.fromtext()

I'm getting an ImportError when I run relay.fromtext().
I installed TVM from source in an Ubuntu 16.04 Docker container. I'm running Python 3.5.2. I see the same problem with LLVM enabled and disabled. CUDA is not enabled.
Here is how to reproduce the problem, as well as the full error output:
In [1]: from tvm import relay

In [2]: relay.fromtext("test")
---------------------------------------------------------------------------
TVMError                                  Traceback (most recent call last)
<ipython-input-2-86c555b139f9> in <module>
----> 1 relay.fromtext("test")

/workspace/python/tvm/_ffi/_ctypes/function.py in __call__(self, *args)
    207                 self.handle, values, tcodes, ctypes.c_int(num_args),
    208                 ctypes.byref(ret_val), ctypes.byref(ret_tcode)) != 0:
--> 209             raise get_last_ffi_error()
    210         _ = temp_args
    211         _ = args

TVMError: Traceback (most recent call last):
  [bt] (1) /workspace/build/libtvm.so(TVMFuncCall+0x61) [0x7f32a8b7eb81]
  [bt] (0) /workspace/build/libtvm.so(+0x92ddfb) [0x7f32a8b79dfb]
  File "/workspace/python/tvm/_ffi/_ctypes/function.py", line 71, in cfun
    rv = local_pyfunc(*pyargs)
  File "/workspace/python/tvm/relay/parser.py", line 38, in fromtext
    from tvm.relay import _parser
  File "/workspace/python/tvm/relay/_parser.py", line 25, in <module>
    from typing import TypeVar, Deque, Tuple, Optional, Union, NamedTuple, List, Callable, Any, Dict
ImportError: cannot import name 'Deque'

Thanks for reporting the problem, please open a new thread in  https://discuss.tvm.ai/ Likely this was due to python typing dependency. try to install python3.6

Python 3.6 fixed it, so I won't open a new thread this time. Thanks.


identical condition

\Modules\Numerics\src\Matrix.cc line 1028
is.get() != ' '

Thanks, I'm not sure there is really a mistake. Note that is.get() extracts a character from the input stream. So the second is.get() will not be identical to the previous is.get(). It's maybe a bit of an odd way to parse the input this way, but it is a nice "left-to-right" line of code to check if the input stream contains a specific string / pattern.

of course  you are correct - here is true one:
\Applications\src\evaluate-overlap.cc line 162
else if (str == "fnr" || str == "falsenegativerate" || str == "falsenegativerate" ||