rejectedsoftware / vibenews

Combined web forum and NNTP server implementation for stand-alone newsgroups
GNU Affero General Public License v3.0
44 stars 3 forks source link

vibenews master does not build for me under dmd 2.0.67-b1 (64 bit Fedora 21) #24

Closed Laeeth closed 8 years ago

Laeeth commented 9 years ago

Hi.

I am having trouble with the build from master of vibenews. I used beta dmd originally, but just checked on 2.066.1 using a different machine and had similar problems.

First of all it references a version of userman that does not itself build. If I edit package.json to refer to master, this works. (A bunch of deprecation warnings).

Second, build of vibenews itself fails -- see below.

Laeeth.

[root@notebook vibenews]# dub Fetching userman ~master (getting selected version)... Placing userman ~master to /root/.dub/packages/... Package userman can be upgraded from ~master to 0.2.0. Use "dub upgrade" to perform those changes. WARNING: A deprecated branch based version specification is used for the dependency userman. Please use numbered versions instead. Also note that you can still use the dub.selections.json file to override a certain dependency to use a branch instead. Target vibe-d 0.7.21 is up to date. Use --force to rebuild. Target antispam 0.0.5 is up to date. Use --force to rebuild. Building userman ~master configuration "library", build type debug. Running dmd... ../../root/.dub/packages/userman-master/source/userman/controller.d(77): Deprecation: function vibe.crypto.passwordhash.generateSimplePasswordHash is deprecated - This function is considered insecure and will be removed. The DUB packages dauth or scrypt may be suitable alternatives. Compiling diet template 'userman.mail.invitation.dt'... Compiling diet template 'userman.mail.activation.dt'... Compiling diet template 'userman.mail.reset_password.dt'... ../../root/.dub/packages/userman-master/source/userman/controller.d(196): Deprecation: function vibe.crypto.passwordhash.generateSimplePasswordHash is deprecated - This function is considered insecure and will be removed. The DUB packages dauth or scrypt may be suitable alternatives. Serializing composite type Empty which has no serializable fields ../../root/.dub/packages/userman-master/source/userman/mongocontroller.d(129): Deprecation: function vibe.crypto.passwordhash.generateSimplePasswordHash is deprecated - This function is considered insecure and will be removed. The DUB packages dauth or scrypt may be suitable alternatives. ../../root/.dub/packages/userman-master/source/userman/rediscontroller.d(281): Deprecation: function vibe.crypto.passwordhash.generateSimplePasswordHash is deprecated - This function is considered insecure and will be removed. The DUB packages dauth or scrypt may be suitable alternatives. ../../root/.dub/packages/userman-master/source/userman/web.d(56): Deprecation: function vibe.crypto.passwordhash.generateSimplePasswordHash is deprecated - This function is considered insecure and will be removed. The DUB packages dauth or scrypt may be suitable alternatives. Compiling diet template 'userman.login.dt'... ../../root/.dub/packages/userman-master/source/userman/web.d(239): Deprecation: function vibe.crypto.passwordhash.testSimplePasswordHash is deprecated - This function is considered insecure and will be removed. The DUB packages dauth or scrypt may be suitable alternatives. Compiling diet template 'userman.logout.dt'... Compiling diet template 'userman.register.dt'... Compiling diet template 'userman.register_activate.dt'... Compiling diet template 'userman.resend_activation.dt'... Compiling diet template 'userman.resend_activation_done.dt'... Compiling diet template 'userman.activate.dt'... Compiling diet template 'userman.forgot_login.dt'... Compiling diet template 'userman.forgot_login_sent.dt'... Compiling diet template 'userman.reset_password.dt'... Compiling diet template 'userman.reset_password_done.dt'... Compiling diet template 'userman.profile.dt'... Building vibenews 0.6.4+commit.4.g361e94e configuration "application", build type debug. Compiling using dmd... Compiling diet template 'vibenews.admin.index.dt'... Compiling diet template 'vibenews.admin.editcategory.dt'... Compiling diet template 'vibenews.admin.editgroup.dt'... Compiling diet template 'vibenews.admin.listarticles.dt' (compat)... /opt/dmd/druntime/import/core/stdc/stdarg.d(215): Error: 'std.variant.VariantN!32LU.VariantN.opAssign!(VariantN!32LU).opAssign' is not nothrow /opt/dmd/druntime/import/core/stdc/stdarg.d(205): Error: function 'core.stdc.stdarg.va_arg!(VariantN!32LU).va_arg' is nothrow yet may throw /opt/dmd/druntime/import/core/stdc/stdarg.d(201): Error: template instance core.stdc.stdarg.va_arg!(VariantN!32LU) error instantiating ../../root/.dub/packages/vibe-d-0.7.21/source/vibe/templ/diet.d-mixin-105(107): instantiated from here: vaarg!(VariantN!32LU) ../../root/.dub/packages/vibe-d-0.7.21/source/vibe/http/server.d(1086): instantiated from here: compileDietFileCompatV!("vibenews.admin.listarticles.dt", HTTPServerRequest, "req", Info, "info") source/vibenews/admin.d(213): instantiated from here: renderCompat!("vibenews.admin.listarticles.dt", HTTPServerRequest, "req", Info_, "info") Compiling diet template 'vibenews.admin.listusers.dt' (compat)... vibenews.admin.listusers.dt(49): Error: no property '_id' for type 'UserInfo' vibenews.admin.listusers.dt(52): Error: template std.array.join cannot deduce function from argument types !()(ID!(Group)[], string), candidates are: /opt/dmd/phobos/std/array.d(1638): std.array.join(RoR, R)(RoR ror, R sep) if (isInputRange!RoR && isInputRange!(Unqual!(ElementType!RoR)) && isInputRange!R && is(Unqual!(ElementType!(ElementType!RoR)) == Unqual!(ElementType!R))) /opt/dmd/phobos/std/array.d(1685): std.array.join(RoR)(RoR ror) if (isInputRange!RoR && isInputRange!(Unqual!(ElementType!RoR))) vibenews.admin.listusers.dt(54): Error: no property 'id' for type 'UserInfo' ../../root/.dub/packages/vibe-d-0.7.21/source/vibe/http/server.d(1086): Error: template instance vibe.templ.diet.compileDietFileCompatV!("vibenews.admin.listusers.dt", HTTPServerRequest, "req", Info, "info") error instantiating source/vibenews/admin.d(269): instantiated from here: renderCompat!("vibenews.admin.listusers.dt", HTTPServerRequest, "req", Info_, "info") Compiling diet template 'vibenews.admin.edituser.dt' (compat)... vibenews.admin.edituser.dt(19): Error: no property '_id' for type 'User', did you mean 'id'? vibenews.admin.edituser.dt(52): Error: template std.array.join cannot deduce function from argument types !()(ID!(Group)[], string), candidates are: /opt/dmd/phobos/std/array.d(1638): std.array.join(RoR, R)(RoR ror, R sep) if (isInputRange!RoR && isInputRange!(Unqual!(ElementType!RoR)) && isInputRange!R && is(Unqual!(ElementType!(ElementType!RoR)) == Unqual!(ElementType!R))) /opt/dmd/phobos/std/array.d(1685): std.array.join(RoR)(RoR ror) if (isInputRange!RoR && isInputRange!(Unqual!(ElementType!RoR))) vibenews.admin.edituser.dt(59): Error: no property 'id' for type 'User', did you mean 'id'? ../../root/.dub/packages/vibe-d-0.7.21/source/vibe/http/server.d(1086): Error: template instance vibe.templ.diet.compileDietFileCompatV!("vibenews.admin.edituser.dt", HTTPServerRequest, "req", Info, "info") error instantiating source/vibenews/admin.d(283): instantiated from here: renderCompat!("vibenews.admin.edituser.dt", HTTPServerRequest, "req", Info_, "info") source/vibenews/admin.d(297): Error: cannot implicitly convert expression (array(map(split(*pv, ",")))) of type string[] to ID!(Group)[] source/vibenews/controller.d(41): Error: no property 'databaseName' for type 'userman.userman.UserManSettings' source/vibenews/controller.d(47): Error: cannot create instance of abstract class UserManController source/vibenews/controller.d(47): function 'bool isEmailRegistered(string email)' is not implemented source/vibenews/controller.d(47): function 'ID!(User) addUser(ref User usr)' is not implemented source/vibenews/controller.d(47): function 'User getUser(ID!(User) id)' is not implemented source/vibenews/controller.d(47): function 'User getUserByName(string name)' is not implemented source/vibenews/controller.d(47): function 'User getUserByEmail(string email)' is not implemented source/vibenews/controller.d(47): function 'User getUserByEmailOrName(string email_or_name)' is not implemented source/vibenews/controller.d(47): function 'void enumerateUsers(int first_user, int max_count, void delegate(ref User usr) del)' is not implemented source/vibenews/controller.d(47): function 'long getUserCount()' is not implemented source/vibenews/controller.d(47): function 'void deleteUser(ID!(User) user_id)' is not implemented source/vibenews/controller.d(47): function 'void updateUser(ref const(User) user)' is not implemented source/vibenews/controller.d(47): function 'void setEmail(ID!(User) user, string email)' is not implemented source/vibenews/controller.d(47): function 'void setFullName(ID!(User) user, string full_name)' is not implemented source/vibenews/controller.d(47): function 'void setPassword(ID!(User) user, string password)' is not implemented source/vibenews/controller.d(47): function 'void setProperty(ID!(User) user, string name, string value)' is not implemented source/vibenews/controller.d(47): function 'void addGroup(string name, string description)' is not implemented source/vibenews/controller.d(130): Error: function userman.controller.UserManController.getUser (ID!(User) id) is not callable using argument types (BsonObjectID) source/vibenews/controller.d(141): Error: function userman.controller.UserManController.deleteUser (ID!(User) user_id) is not callable using argument types (BsonObjectID) Serializing composite type Empty which has no serializable fields Serializing composite type Empty which has no serializable fields source/vibenews/controller.d(499): Error: function userman.controller.UserManController.getUser (ID!(User) id) is not callable using argument types (BsonObjectID) source/vibenews/controller.d(502): Error: expression usr of type User does not have a boolean value source/vibenews/controller.d(502): Error: no property '_id' for type 'User', did you mean 'id'? source/vibenews/controller.d(688): Error: function userman.controller.UserManController.getUser (ID!(User) id) is not callable using argument types (BsonObjectID) source/vibenews/controller.d(706): Error: function userman.controller.UserManController.getUser (ID!(User) id) is not callable using argument types (BsonObjectID) FAIL .dub/build/application-debug-linux.posix-x86_64-dmd_2066-B3E3534468E2BC7FA6022C7D20410124/ vibenews executable Error executing command run: dmd failed with exit code 1.