Bug 1093657 - librecad-2.0.4 is available
Summary: librecad-2.0.4 is available
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: librecad
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Tom "spot" Callaway
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-05-02 10:09 UTC by Upstream Release Monitoring
Modified: 2014-06-12 06:28 UTC (History)
2 users (show)

Fixed In Version: librecad-2.0.4-1.fc19
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-06-12 06:26:27 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
Diff of upstream libdxfrw 0.5.11 and libdxfrw bundled in librecad 2.0.4 (11.09 KB, patch)
2014-06-02 17:15 UTC, Richard Shaw
no flags Details | Diff

Description Upstream Release Monitoring 2014-05-02 10:09:17 UTC
Latest upstream release: 2.0.3
Current version/release in Fedora Rawhide: 2.0.2-1.fc21
URL: https://api.github.com/repos/LibreCAD/LibreCAD/tags

Please consult the package updates policy before you issue an update to a stable branch: https://fedoraproject.org/wiki/Updates_Policy

More information about the service that created this bug can be found at:
https://fedoraproject.org/wiki/Upstream_release_monitoring

Comment 1 Richard Shaw 2014-05-07 03:18:36 UTC
I've started work on the update but haven't had time to update the patches yet...

Comment 2 Upstream Release Monitoring 2014-06-02 09:31:33 UTC
Latest upstream release: 2.0.4
Current version/release in Fedora Rawhide: 2.0.2-1.fc21
URL: https://api.github.com/repos/LibreCAD/LibreCAD/tags

Please consult the package updates policy before you issue an update to a stable branch: https://fedoraproject.org/wiki/Updates_Policy

More information about the service that created this bug can be found at:
https://fedoraproject.org/wiki/Upstream_release_monitoring

Comment 3 Richard Shaw 2014-06-02 14:17:12 UTC
Ok, doing a local build now of 2.0.4.

Comment 4 Richard Shaw 2014-06-02 14:18:37 UTC
Is the bundled libdxfrw newer than what's in Fedora?

g++ -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -std=c++11 -g -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -O2 -Wall -W -D_REENTRANT -DQC_APPKEY="/LibreCAD" -DQC_APPNAME="LibreCAD" -DQC_COMPANYNAME="LibreCAD" -DQC_COMPANYKEY="LibreCAD" -DQC_VERSION="master" -DQC_DELAYED_SPLASH_SCREEN=1 -DHAS_BOOST=1 -DQC_SCMREVISION="2.0.4" -DQC_APPDIR="librecad" -DQINITIMAGES_LIBRECAD=qInitImages_librecad -DQT_NO_DEBUG -DQT_SVG_LIB -DQT_SQL_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/lib64/qt4/mkspecs/linux-g++ -I. -I/usr/include/QtCore -I/usr/include/QtGui -I/usr/include/QtSql -I/usr/include/QtSvg -I/usr/include -I/usr/include/QtHelp -I/usr/include -I/usr/include/libdxfrw0 -I../../libraries/jwwlib/src -Icmd -Ilib/actions -Ilib/creation -Ilib/debug -Ilib/engine -Ilib/fileio -Ilib/filters -Ilib/gui -Ilib/information -Ilib/math -Ilib/modification -Ilib/scripting -Iactions -Imain -Iplugins -Iui -Iui/forms -I../res -I../../generated/librecad/moc -I../../generated/librecad/ui -o ../../generated/librecad/obj/rs_dialogfactory.o lib/gui/rs_dialogfactory.cpp
lib/filters/rs_filterdxfrw.cpp: In member function 'virtual void RS_FilterDXFRW::writeHeader(DRW_Header&)':
lib/filters/rs_filterdxfrw.cpp:1479:22: error: 'class DRW_Header' has no member named 'addInt'

Comment 5 Tom "spot" Callaway 2014-06-02 14:28:34 UTC
It could be. Let me know if I need to update libdxfrw.

Comment 6 Richard Shaw 2014-06-02 16:40:54 UTC
I'm not really a programmer so I could be completely missing something here but it looks like it should work...

libdxfrw.h includes all of the drw_... headers. drw_objects.h looks to define DRW_Header (but not addInt) but it does include drw_base.h that looks to me to generically create addInt through a class so my assumption is that DRW_Header in drw_objects.h gets addInt though class inheritance.

Comment 7 Richard Shaw 2014-06-02 16:52:29 UTC
Ok guys, I'm pretty much out of my element here but I would expect to see DRW_Header::addInt in this list correct?

(this is for ver 0.5.11, but it looks pretty much the same for 0.5.7)
$ objdump -TC /usr/lib64/libdxfrw.so.0 | grep DRW_Header
0000003eda416c40 g    DF .text  0000000000000059  Base        DRW_Header::getInt(std::string, int*)
0000003eda416d20 g    DF .text  0000000000000071  Base        DRW_Header::getCoord(std::string, DRW_Coord*)
0000003eda416ca0 g    DF .text  0000000000000079  Base        DRW_Header::getStr(std::string, std::string*)
0000003eda416be0 g    DF .text  0000000000000059  Base        DRW_Header::getDouble(std::string, double*)
0000003eda416940 g    DF .text  0000000000000091  Base        DRW_Header::addComment(std::string)
0000003eda41ad60 g    DF .text  0000000000000fa1  Base        DRW_Header::parseCode(int, dxfReader*)
0000003eda436a10  w   DF .text  00000000000000eb  Base        DRW_Header::~DRW_Header()
0000003eda436a10  w   DF .text  00000000000000eb  Base        DRW_Header::~DRW_Header()
0000003eda416da0 g    DF .text  0000000000003fbe  Base        DRW_Header::write(dxfWriter*, DRW::Version)

Comment 8 Richard Shaw 2014-06-02 16:59:40 UTC
Well dang... Looks like librecad made some custom changes to the library, quite a few actually but here's the relevant part of the diff...

+void DRW_Header::addDouble(std::string key, double value, int code){
+    curr = new DRW_Variant();
+    curr->addDouble( value );
+    curr->code = code;
+    vars[key] =curr;
+}
+
+void DRW_Header::addInt(std::string key, int value, int code){
+    curr = new DRW_Variant();
+    curr->addInt( value );
+    curr->code = code;
+    vars[key] =curr;
+}
+
+void DRW_Header::addStr(std::string key, std::string value, int code){
+    curr = new DRW_Variant();
+    curr->addString( value );
+    curr->code = code;
+    vars[key] =curr;
+}
+
+void DRW_Header::addCoord(std::string key, DRW_Coord value, int code){
+    curr = new DRW_Variant();
+    curr->addCoord( value );
+    curr->code = code;
+    vars[key] =curr;
+}

Comment 9 Tom "spot" Callaway 2014-06-02 17:01:02 UTC
Attach the whole diff? I think librecad is the only consumer of libdxfrw in Fedora, if the changes are all just new function definitions, we should be fine to add them.

Comment 10 Richard Shaw 2014-06-02 17:15:05 UTC
Created attachment 901510 [details]
Diff of upstream libdxfrw 0.5.11 and libdxfrw bundled in librecad 2.0.4

Comment 11 Tom "spot" Callaway 2014-06-02 17:23:55 UTC
Thanks Richard, those changes look like a lot of cleanups and function adds, so I'm committing it right now and doing new 0.5.11 package builds. When they're done, you can tag them as overrides and build librecad against them.

Comment 13 Richard Shaw 2014-06-02 18:14:15 UTC
Ok, looks like I need commit access to libdxfrw to do the buildroot override so I have requested it.

Comment 14 Fedora Update System 2014-06-02 20:14:50 UTC
librecad-2.0.4-1.fc20,libdxfrw-0.5.11-1.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/librecad-2.0.4-1.fc20,libdxfrw-0.5.11-1.fc20

Comment 15 Fedora Update System 2014-06-02 20:15:00 UTC
librecad-2.0.4-1.fc19,libdxfrw-0.5.11-1.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/librecad-2.0.4-1.fc19,libdxfrw-0.5.11-1.fc19

Comment 16 Fedora Update System 2014-06-04 07:54:29 UTC
Package librecad-2.0.4-1.fc19, libdxfrw-0.5.11-1.fc19:
* should fix your issue,
* was pushed to the Fedora 19 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing librecad-2.0.4-1.fc19 libdxfrw-0.5.11-1.fc19'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2014-7042/librecad-2.0.4-1.fc19,libdxfrw-0.5.11-1.fc19
then log in and leave karma (feedback).

Comment 17 Fedora Update System 2014-06-12 06:26:27 UTC
librecad-2.0.4-1.fc20, libdxfrw-0.5.11-1.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 18 Fedora Update System 2014-06-12 06:28:18 UTC
librecad-2.0.4-1.fc19, libdxfrw-0.5.11-1.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.